该模块包括3个类和一些常见的运算操作等等。因为该模块是C语言编写的,所以其中方法的运算比直接用python编写要快。方法前后可以有双下滑线,和不带下划线等价,比如

add

__add__

operator中的类可以生成模板,自定义顺序访问指定索引的值、指定属性或指定方法。

常用类

itemgetter

生成一个可以从输入对象中获得固定

索引

的取值的可调用对象。比如:

import operator

a=operator.itemgetter(2) #记录2作为索引

a([2,3,4,5]) #4

b=operator.itemgetter(3,2,1)

b(('a','b','c','d','e')) #('d','c','b')

通过该类可以指定索引和顺序,像是一个模板,将序列中对应索引的值按照模板的顺序输出。

attrgetter

理解了itemgetter,那么attrgetter也就很容易理解了,它生成一个可以从输入对象中获得固定

属性

的可调用对象。

假如实例r有属性length:

import operator

a=operator.attrgetter('length') #记着加引号

a(r) #r.length

methodcaller

生成一个可以从输入对象中获得固定

方法

的可调用对象。

import operator

a='123'

b=operator.methodcaller('isalpha') #记着加引号

b(a) #False 等价于a.isalpha()

a=[1,2,3,4,3]

b=operator.methodcaller('count'3) #3是count()的输入参数

b(a) #2 等价于a.count(3)

当需要访问很多不同对象的相同方法或属性,可以借助attrgetter和methodcaller方法生成一个模板,然后调用它。

常用方法

因为operator大部分是常见运算,所以我不用往常介绍+举例的方式了,直接列表对比供各位查阅:

数学计算

operator中的方法

意义

abs

绝对值

add(a, b)

a+b

sub(a, b)

a-b

mul(a, b)

a*b

truediv(a, b)

a/b

floordiv(a, b)

a//b (取商)

mod(a, b)

a%b (取模)

pow(a, b)

a**b (次方)

neg(a)

-a

pos(a)

+a

matmul(a, b)

a@b (矩阵乘法)

比较、判断运算

operator中的方法

意义

eq(a, b)

a==b

ne(a, b)

a!=b

ge(a, b)

a>=b

gt(a, b)

a>b

le(a, b)

a<=b

lt(a, b)

a

not_(a)

not a

truth(a)

a==True (判断a是否True)

is_(a, b)

a is b

is_not(a, b)

a is not b

位运算

operator中的方法

意义

and_(a, b)

&

or_(a, b)

|

xor(a, b)

^ (异或)

inv(a),invert(a)

~ (各位取反)

lshift(a, b)

<<

rshift(a, b)

>>

赋值运算

operator中的方法

意义

a=iadd(a, b)

a += b

a=isub(a, b)

a -= b

a = imul(a, b)

a *= b

a = itruediv(a, b)

a /= b

a = ifloordiv(a, b)

a //= b

a = imod(a, b)

a %= b

a = ipow(a, b)

a **= b

a = irshift(a, b)

a >>= b

a = ilshift(a, b)

a <<= b

a = ior(a, b)

a |= b

a = iand(a, b)

a &= b

a = ixor(a, b)

a ^= b

a = imatmul(a, b)

a @= b

a = iconcat(a, b)

a += b (a, b是序列)

序列操作

operator中的方法

意义

concat(a, b)

拼接两个序列

contains(a, b)

b in a

countOf(a, b)

a中b的次数

index(a)

a的索引

indexOf(a, b)

a中b的第一个索引

delitem(a, b)

del a[b] (删除a[b])

getitem(a, b)

a[b]

setitem(a, b, c)

a[b] = c

length_hint(obj, default=0)

len(obj) (求序列长度)

python中mod运算符_Python—运算符模块,pythonoperator相关推荐

  1. python中getopt函数_python getopt模块使用方法

    python中 getopt 模块,是专门用来处理命令行参数的 getop标准格式: 函数getopt(args, shortopts, longopts = []) shortopts 是短参数   ...

  2. python中math函数_Python math模块 数学函数教程

    在Python基础教程中,大家都已经了解了Python有很多运算符可以进行一些数学运算,但是要处理复杂的问题是不是所有代码都要自己一行一行的来编写呢? 玩蛇网提醒大家,这个时候,最先想到的就应该是py ...

  3. python中getopt函数_python getopt模块详解

    getopt这个函数 就是用来抽取 sys.argv 获得的用户输入来确定执行步骤. getopt是个模块,而这个模块里面又有getopt 函数,所以getopt需要这样这样用. getopt.get ...

  4. Python中递增和递减运算符的行为

    我注意到可以将预增/减运算符应用于变量(例如++count ). 它可以编译,但实际上并不会改变变量的值! Python中预增/减运算符(++ /-)的行为是什么? 为什么Python会偏离C / C ...

  5. python常见的数值运算符_第18 p,Python中各种常用的运算符,特别是增量运算符...

    原标题:第18 p,Python中各种常用的运算符,特别是增量运算符 大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第18篇文章,第二阶段的课程:Python基础知识:Pytho ...

  6. Python中使用逻辑与运算符“and”判断两个比较条件是否满足时编辑器提示“Simplify chained comparison ”的解决方法

    Python中使用逻辑与运算符"and"判断两个比较条件是否满足时编辑器提示"Simplify chained comparison ", 如下图所示: 这是提 ...

  7. python根号运算符_Python 运算符

    在本文中,您将学习有关Python中不同类型的运算符,它们的语法以及如何在示例中使用它们的所有知识. python中的运算符是什么? 运算符是Python中执行算术或逻辑计算的特殊符号.运算符所操作的 ...

  8. python中options类_Python的OptionParser模块

    Python中强大的选项处理模块. 示例 #!/usr/bin/pythonfrom optparse import OptionParser parser = OptionParser() pars ...

  9. python中的乘方_python中的乘方

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 一,算术运算python中的乘方运算符号为 **,比较特殊. 作为运算符,%表示 ...

  10. Python中常用的数据分析工具(模块)有哪些?

    本期Python培训分享:Python中常用的数据分析工具(模块)有哪些?Python本身的数据分析功能并不强,需要安装一些第三方的扩展库来增强它的能力.我们课程用到的库包括NumPy.Pandas. ...

最新文章

  1. 【决战西二旗】|Redis面试热点之底层实现篇
  2. Pycharm回退操作+常用批量操作
  3. 联想确定造芯!全资半导体公司曝光:上海自贸区注册,数据中心VP任法人
  4. 李开复悔过:把运营微博当人生,把获取粉丝当游戏
  5. 公司--下载svg图片
  6. 垂直margin合并问题
  7. boost::multi_array模块实现index_base 修改工具的测试
  8. 【Linux】一步一步学Linux——iptables命令(186)
  9. 分数调查 HihoCoder - 1515(带权并查集)
  10. 2岁男童入住自如后患白血病离世 自如回复:道歉做不到
  11. 网络工程交换技术之hsrp
  12. VS2015静态库的使用(上)
  13. python——爬虫豆瓣250
  14. 程序员述职报告范文_程序员个人年度工作总结范文
  15. SQL窗口函数实现累加求功能
  16. 学习笔记之RecyclerView
  17. InterSystems开发者关系主管Dean:集成FHIR,改变游戏规则
  18. 捕获海康威视IPCamera图像,转成OpenCV可以处理的图像(一)
  19. 当当网CEO李国庆微博上发飙,真牛!
  20. Small Object Detection using Context and Attention(论文阅读笔记)

热门文章

  1. python学习笔记之其它
  2. Logstash filter 插件之 grok
  3. 接口”安全机制”的设计
  4. 2014百度之星第一题Energy Conversion
  5. 使用flask开发web应用
  6. android小小的开发细节
  7. java对象的创建、java分配内存的方式、指针碰撞、空闲列表
  8. android 设为锁屏壁纸,修改设置Android锁屏壁纸为系统默认的锁屏壁纸
  9. @Resource真的只是按名称来进行依赖注入吗?@Autowired真的只是按照类型来依赖注入吗?
  10. Spring面试问题和答案