zoukankan      html  css  js  c++  java
  • Python2.7-operator

    operator 模块,没有什么特殊的,简单说就是把常用的数学计算符号(+,-,*,**,/,<<,>>等)逻辑运算(or,and,xor,is,is_not)等以函数形式表示了。此外还有一些对序列(sequence)的操作函数,对对象的操作函数。所有这些函数都是可以在编写自己的类的时候定义的(前后“__”),定义后就可以直接用符号进行运算。

    1、模块特殊函数:都返回一个可调用对象,可以用于 map(), sorted(), itertools.groupby() 等接受一个函数对象作为参数的函数

    operator.attrgetter(*attrs):返回对象的对应属性
    operator.itemgetter(*items):返回对象对应位置的值,相当于 __getitem__() 方法
    operator.methodcaller(name[, args...]):返回对象的对应方法函数,额外输入的 args 会作为此方法的默认参数

    2、模块常规函数及对应符号:

    OperationSyntaxFunction
    Addition b add(a, b)
    Concatenation seq1 seq2 concat(seq1, seq2)
    Containment Test obj in seq contains(seq, obj)
    Division b div(a, b) (without __future__.division)
    Division b truediv(a, b) (with __future__.division)
    Division // b floordiv(a, b)
    Bitwise And b and_(a, b)
    Bitwise Exclusive Or b xor(a, b)
    Bitwise Inversion a invert(a)
    Bitwise Or b or_(a, b)
    Exponentiation ** b pow(a, b)
    Identity is b is_(a, b)
    Identity is not b is_not(a, b)
    Indexed Assignment obj[k] v setitem(obj, k, v)
    Indexed Deletion del obj[k] delitem(obj, k)
    Indexing obj[k] getitem(obj, k)
    Left Shift << b lshift(a, b)
    Modulo b mod(a, b)
    Multiplication b mul(a, b)
    Negation (Arithmetic) a neg(a)
    Negation (Logical) not a not_(a)
    Positive a pos(a)
    Right Shift >> b rshift(a, b)
    Sequence Repetition seq i repeat(seq, i)
    Slice Assignment seq[i:j] values setitem(seq, slice(i, j), values)
    Slice Deletion del seq[i:j] delitem(seq, slice(i, j))
    Slicing seq[i:j] getitem(seq, slice(i, j))
    String Formatting obj mod(s, obj)
    Subtraction b sub(a, b)
    Truth Test obj truth(obj)
    Ordering b lt(a, b)
    Ordering <= b le(a, b)
    Equality == b eq(a, b)
    Difference != b ne(a, b)
    Ordering >= b ge(a, b)
    Ordering b gt(a, b)

    3、混合赋值函数都是在对应操作方法前加个 i,and、or、is 还要把结尾的“_”去掉

    ---------------- 坚持每天学习一点点
  • 相关阅读:
    Candy leetcode java
    Trapping Rain Water leetcode java
    Best Time to Buy and Sell Stock III leetcode java
    Best Time to Buy and Sell Stock II leetcode java
    Best Time to Buy and Sell Stock leetcode java
    Maximum Subarray leetcode java
    Word Break II leetcode java
    Word Break leetcode java
    Anagrams leetcode java
    Clone Graph leetcode java(DFS and BFS 基础)
  • 原文地址:https://www.cnblogs.com/tccbj/p/8283061.html
Copyright © 2011-2022 走看看