

def limit(e, z, z0, dir='+'):
    '\n    Compute the limit of e(z) at the point z0.\n\n    z0 can be any expression, including oo and -oo.\n\n    For dir="+" (default) it calculates the limit from the right\n    (z->z0+) and for dir="-" the limit from the left (z->z0-).  For infinite\n    z0 (oo or -oo), the dir argument is determined from the direction\n    of the infinity (i.e., dir="-" for oo).\n\n    Examples\n    ========\n\n    >>> from sympy import limit, sin, Symbol, oo\n    >>> from sympy.abc import x\n    >>> limit(sin(x)/x, x, 0)\n    1\n    >>> limit(1/x, x, 0, dir="+")\n    oo\n    >>> limit(1/x, x, 0, dir="-")\n    -oo\n    >>> limit(1/x, x, oo)\n    0\n\n    Notes\n    =====\n\n    First we try some heuristics for easy and frequent cases like "x", "1/x",\n    "x**2" and similar, so that it\'s fast. For all other cases, we use the\n    Gruntz algorithm (see the gruntz() function).\n    '
    return Limit(e, z, z0, dir).doit(deep=False)

dataset/ETHPy150Open sympy/sympy/sympy/series/limits.py limit/original