codul Sursa: Lib/operator.py
operator modulul exporturile un set de eficient funcțiile corespunzătoare la intrinsecă operatorii de Python. De exemplu, operator.add(x, y) isequivalent la expresia x+y. Multe nume de funcții sunt cele utilizate pentrumetode speciale, fără sublinieri duble. Pentru compatibilitate înapoi, multe dintre acestea au o variantă cu subliniere duble păstrate., Variantelefără subliniere dublă sunt preferate pentru claritate.funcțiile se încadrează în categorii care efectuează comparații de obiecte, logiceoperații, operații matematice și operații de secvență., id=”84ef065d38″>__ne__(a, b)¶ operator.__ge__(a, b)¶ operator.__gt__(a, b)¶
The logical operations are also generally applicable to all objects, and supporttruth tests, identity tests, and boolean operations:
operator.not_(obj)¶operator.__not__(obj)¶operator.truth(obj)¶
Return True if obj is true, and False otherwise., This isequivalent to using the bool constructor.
operator.is_(a, b)¶
Return a is b. Tests object identity.
operator.is_not(a, b)¶
Return a is not b. Tests object identity.
The mathematical and bitwise operations are the most numerous:
operator.abs(obj)¶operator.__abs__(obj)¶
Return the absolute value of obj.,
operator.add(a, b)¶operator.__add__(a, b)¶
Return a + b, for a and b numbers.
operator.and_(a, b)¶operator.__and__(a, b)¶
Return the bitwise and of a and b.
operator.floordiv(a, b)¶operator.__floordiv__(a, b)¶
Return a // b.,
operator.index(a)¶operator.__index__(a)¶
Return a converted to an integer. Equivalent to a.__index__().
operator.inv(obj)¶operator.invert(obj)¶operator.__inv__(obj)¶operator.__invert__(obj)¶
Return the bitwise inverse of the number obj. This is equivalent to ~obj.,
operator.lshift(a, b)¶operator.__lshift__(a, b)¶
Return a shifted left by b.
operator.mod(a, b)¶operator.__mod__(a, b)¶
Return a % b.
operator.mul(a, b)¶operator.__mul__(a, b)¶
Return a * b, for a and b numbers.,
operator.matmul(a, b)¶operator.__matmul__(a, b)¶
Return a @ b.
New in version 3.5.
operator.neg(obj)¶operator.__neg__(obj)¶
Return obj negated (-obj).
operator.or_(a, b)¶operator.__or__(a, b)¶
Return the bitwise or of a and b.,
operator.pos(obj)¶operator.__pos__(obj)¶
Return obj positive (+obj).
operator.pow(a, b)¶operator.__pow__(a, b)¶
Return a ** b, for a and b numbers.
operator.rshift(a, b)¶operator.__rshift__(a, b)¶
Return a shifted right by b.,
operator.sub(a, b)¶operator.__sub__(a, b)¶
Return a - b.
operator.truediv(a, b)¶operator.__truediv__
(a, b)¶
Return a / b where 2/3 is .66 rather than 0. This is also known as”true” division.
operator.xor(a, b)¶operator.__xor__(a, b)¶
Return the bitwise exclusive or of a and b.,
Operațiuni care lucrează cu secvențe (unele dintre ele cu mapările prea) include:
operator.concat(a, b)¶operator.__concat__(a, b)¶
Înapoi a + b pentru a și b secvențe.
operator.contains(a, b)¶operator.__contains__(a, b)¶
se Întoarcă rezultatul testului b in a. Observați operanzii inversați.,
operator.countOf(a, b)¶
returnează numărul de apariții ale b într-o.
operator.delitem(a, b)¶operator.__delitem__(a, b)¶
Elimina valoarea de la un index b.
operator.getitem(a, b)¶operator.__getitem__(a, b)¶
Returna valoarea de la un index b.
operator.indexOf(a, b)¶
returnează indicele primei de apariție a b într-o.,
operator.setitem(a, b, c)¶operator.__setitem__(a, b, c)¶
Setați valoarea la index b-c.
operator.length_hint(obj, default=0)¶
Returna o valoare estimată de lungime de obiectul o. Încercați mai întâi să se întoarcă itsactual lungime, apoi o estimare folosind object.__length_hint__(), șiîn cele din urmă a reveni la valoarea implicită.
nou în versiunea 3.4.
modulul operator definește, de asemenea, instrumentele pentru atributul generalizat și itemlookups., Acestea sunt utile pentru a face rapid teren extractoare ca argumente pentrumap(), sorted(), itertools.groupby(), sau alte funcții thatexpect o funcție argument.
operator.attrgetter(attr)¶operator.attrgetter(*attrs)
Returna un obiect nevărsat care preia attr din operand.Dacă se solicită mai mult de un atribut, returnează un tuplu de atribute.Numele atributelor pot conține și puncte., De exemplu:
Echivalent cu:
operator.itemgetter(element)¶operator.itemgetter(*articole)
Returna un obiect nevărsat, care preia postul de operand folosind theoperand e __getitem__() metoda. Dacă sunt specificate mai multe elemente,returnează un tuplu de valori de căutare. De exemplu:
-
f = itemgetter(2), apelulf(r)livrarer., -
g = itemgetter(2, 5, 3), apelulg(r)livrare(r, r, r).
echivalent cu:
elementele pot fi orice tip acceptat de operandul__getitem__()metoda. Dicționarele acceptă orice valoare hashable., Liste, tupluri, andstrings accepta un index sau o felie:
>>> soldier = dict(rank='captain', name='dotterbart')>>> itemgetter('rank')(soldier)'captain'
Exemplu de utilizare itemgetter() pentru a prelua domenii specifice de atuple record:
operator.methodcaller(nume, /, *args, **kwargs)¶
Returna un obiect nevărsat care solicită numele de metoda pe operand. Dacă sunt date argumente suplimentare și/sau argumente de cuvinte cheie, acestea vor fi date și metodei. De exemplu:
-
f = methodcaller('name'), apelulf(b)livrareb.name()., -
After
f = methodcaller('name', 'foo', bar=1), the callf(b)returnsb.name('foo', bar=1).
Equivalent to:
def methodcaller(name, /, *args, **kwargs): def caller(obj): return getattr(obj, name)(*args, **kwargs) return caller