Zdrojový kód: Lib/operator.py
operator modul exportuje sadu efektivní funkce, které odpovídají na vnitřní provozovatelé Python. Například operator.add(x, y) je ekvivalentní výrazu x+y. Mnoho názvů funkcí je těch, které se používajíspeciální metody, bez dvojitých podtržítek. Pro zpětnou kompatibilitu, mnoho z nich má variantu s dvojitým podtržením., Pro přehlednost jsou preferovány varianty bez dvojitého podtržení.
funkce spadají do kategorií, které provádějí porovnávání objektů, logickéoperace, matematické operace a sekvenční operace., 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.,
Operace, které pracují se sekvencí (některé z nich s mapování) patří:
operator.concat(a, b)¶operator.__concat__(a, b)¶
Návrat a + b pro a a b sekvencí.
operator.contains(a, b)¶operator.__contains__(a, b)¶
Návrat na výsledek testu b in a. Všimněte si obrácených operandů.,
operator.countOf(a, b)¶
Návrat počet výskytů b do a.
operator.delitem(a, b)¶operator.__delitem__(a, b)¶
Odstraňte hodnotu s indexem „b“.
operator.getitem(a, b)¶operator.__getitem__(a, b)¶
Návrat hodnota na indexu b.
operator.indexOf(a, b)¶
Vrátí index prvního výskytu b. v.,
operator.setitem(a, b, c)¶operator.__setitem__(a, b, c)¶
Nastavte hodnotu na indexu b na c.
operator.length_hint(obj, default=0)¶
Návrat se odhaduje délku pro objekt o. První pokus vrátit itsactual délka, pak odhad pomocí object.__length_hint__(), akonečně návrat na výchozí hodnotu.
novinka ve verzi 3.4.
moduloperator také definuje nástroje pro zobecněné atribut a itemlookups., Tyto jsou užitečné pro rychlé pole extraktory jako argumenty promap() sorted() itertools.groupby(), nebo jiné funkce thatexpect argumentem funkce.
operator.attrgetter(attr)¶operator.attrgetter(*attrs)
Návrat na callable objekt, který načte attr z jeho operandu.Pokud je požadován více než jeden atribut, vrátí soubor atributů.Názvy atributů mohou také obsahovat tečky., Například:
Ekvivalentní:
operator.itemgetter(položka)¶operator.itemgetter(*položky)
Návrat na callable objekt, který načte položky ze svého operandu pomocí theoperand __getitem__() metoda. Je-li zadáno více položek,vrátí Tice hodnot vyhledávání. Například:
-
Po
f = itemgetter(2)voláníf(r)výnosyr., -
Po
g = itemgetter(2, 5, 3)voláníg(r)výnosy(r, r, r).
Ekvivalentní:
položky mohou být libovolného typu přijaté operand je __getitem__()metoda. Slovníky přijímají libovolnou hashovatelnou hodnotu., Seznamy, n-tice, andstrings přijmout index nebo plátek:
>>> soldier = dict(rank='captain', name='dotterbart')>>> itemgetter('rank')(soldier)'captain'
Příklad použití itemgetter() chcete-li načíst konkrétní pole z atuple záznam:
operator.methodcaller(jméno, /, *args, **kwargs)¶
Návrat na callable objekt, který volá metodu jménem na jeho operandu. Pokud jsou uvedeny další argumenty a/nebo argumenty klíčových slov, budou dánypro metodu stejně. Například:
-
Po
f = methodcaller('name')voláníf(b)výnosyb.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