1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
Ë
nñúhò ãóü—UdZddlmZddlZddlmZddlmZddlm    Z    m
Z
ddl m Z m Z ddlmZerdd    lmZee e z«Zdd
„ZGd „d ej*¬ «ZGd„de«ZGd„de«ZeedœZded<y)z)
Engine classes for :func:`~pandas.eval`
é)Ú annotationsN)Ú TYPE_CHECKING)ÚNumExprClobberingError)Ú align_termsÚreconstruct_object)ÚMATHOPSÚ
REDUCTIONS)Úprinting)ÚExprcó°—|j}|tz}|r:dj|Dcgc] }t|«‘Œc}«}t    d|›d|›d«‚ycc}w)z…
    Attempt to prevent foot-shooting in a helpful way.
 
    Parameters
    ----------
    expr : Expr
        Terms can contain
    z, zVariables in expression "z" overlap with builtins: (ú)N)ÚnamesÚ _ne_builtinsÚjoinÚreprr)ÚexprrÚoverlapÚxÚss     úRH:\Change_password\venv_build\Lib\site-packages\pandas/core/computation/engines.pyÚ_check_ne_builtin_clashrs_€ð J‰J€EØ”lÑ"€GáØ I‰I¨Ö0 1”t˜A•wÒ0Ó 1ˆÜ$Ø'¨ vÐ-GÈÀsÈ!Ð Ló
ð    
ðùÚ0s§Acób—eZdZdZdZd    d„Zd
d„Zd d„Zed d„«Z    e
jd„«Z y) ÚAbstractEnginez/Object serving as a base class for all engines.Fcó.—||_d|_d|_y©N)rÚ aligned_axesÚ result_type)Úselfrs  rÚ__init__zAbstractEngine.__init__4s€ØˆŒ    Ø ˆÔ؈Õócó@—tj|j«S)zo
        Convert an expression for evaluation.
 
        Defaults to return the expression as a string.
        )r
Ú pprint_thingr©rs rÚconvertzAbstractEngine.convert9s€ô ×$Ñ$ T§Y¡YÓ/Ð/r có—|js,t|jj«\|_|_|j «}t|j||j
|jjj«S)a*
        Run the engine on the expression.
 
        This method performs alignment which is necessary no matter what engine
        is being used, thus its implementation is in the base class.
 
        Returns
        -------
        object
            The result of the passed expression.
        )    Ú _is_alignedrrÚtermsrrÚ    _evaluaterÚ return_type)rÚress  rÚevaluatezAbstractEngine.evaluateAsh€ð×ÒÜ2=¸d¿i¹i¿o¹oÓ2NÑ /ˆDÔ ˜dÔ/ðn‰nÓˆÜ!Ø × Ñ ˜c 4×#4Ñ#4°d·i±i·o±o×6QÑ6Qó
ð    
r có>—|jduxr|jduSr)rrr#s rr&zAbstractEngine._is_alignedVs#€à× Ñ ¨Ð,ÒM°×1AÑ1AÈÐ1MÐMr có—y)a
        Return an evaluated expression.
 
        Parameters
        ----------
        env : Scope
            The local and global environment in which to evaluate an
            expression.
 
        Notes
        -----
        Must be implemented by subclasses.
        N©r#s rr(zAbstractEngine._evaluateZsr N©ÚreturnÚNone)r0Ústr)r0Úobject)r0Úbool) Ú__name__Ú
__module__Ú __qualname__Ú__doc__Ú has_neg_fracrr$r+Úpropertyr&ÚabcÚabstractmethodr(r.r rrr/sI„Ù9à€Ló ó
0ó
ð*òNóðNð    ×Ññ  óñ  r r)Ú    metaclasscó—eZdZdZdZd„Zy)Ú NumExprEnginezNumExpr engine classTcó¾—ddl}|j«}|jj}|j}t |j«|j ||¬«S)Nr)Ú
local_dict)Únumexprr$rÚenvÚ
full_scoperr+)rÚnerrCÚscopes     rr(zNumExprEngine._evaluatepsG€Ûð L‰L‹Nˆài‰im‰mˆØ—‘ˆÜ §    ¡    Ô*؏{‰{˜1¨ˆ{Ó/Ð/r N)r5r6r7r8r9r(r.r rr?r?ks„Ùà€Ló    0r r?có"—eZdZdZdZd„Zdd„Zy)Ú PythonEnginezS
    Evaluate an expression in Python space.
 
    Mostly for testing purposes.
    Fcó"—|j«Sr)rr#s rr+zPythonEngine.evaluate…s€Øy‰y‹{Ðr có—yrr.r#s rr(zPythonEngine._evaluateˆs€Ø r Nr/)r5r6r7r8r9r+r(r.r rrHrH|s„ñð €Lòô r rH)rBÚpythonzdict[str, type[AbstractEngine]]ÚENGINES)rr r0r1)r8Ú
__future__rr;ÚtypingrÚ pandas.errorsrÚpandas.core.computation.alignrrÚpandas.core.computation.opsrr    Úpandas.io.formatsr
Úpandas.core.computation.exprr Ú    frozensetrrÚABCMetarr?rHrLÚ__annotations__r.r rú<module>rWsðòõ#ã
Ý å0÷÷õ
'áÝ1ᘠ:Ñ-Ó.€ ó
ô&9 ˜sŸ{™{õ9 ôx0Nô0ô"  >ô  ð"Øñ,€Р   (ôr