全球速递!python常见运算符及用法小结
目录
算术运算符关系运算符逻辑运算符成员运算符身份运算符三目运算符运算符优先级算术运算符
运算符 | 描述 |
---|---|
+ | 两个数相加两个数相加,或是字符串连接 |
- | 两个数相减 |
* | 两个数相乘,或是返回一个重复若干次的字符串 |
/ | 两个数相除,结果为浮点数 |
% | 取模,返回两个数相除的余数 |
// | 两个数相除,返回商的整数部分 |
** | 幂运算,返回乘方结果 |
print(1 + 2) # 3 print(2 - 1) # 1 print(2 * 3) # 6 print(3 / 2) # 1.5 print(6 % 5) # 1 print(8 // 2) # 4 print(3 ** 2) # 9
如果想同时得到商和余数,可以用divmod这个方法
该方法的返回值是tuple (x//y, x%y).
print(divmod(10,3)) # (3,1)
因为浮点数精度的问题,Python还存在一些计算方面的小问题
(资料图片仅供参考)
print(0.1+0.1+0.1-0.3) # 5.551115123125783e-17
要解决这个问题,可以导入decimal模块
from decimal import Decimal # 计算结果:0.0 print(Decimal("0.1")+Decimal("0.1")+Decimal("0.1")-Decimal("0.3"))
关系运算符
运算符 | 描述 |
---|---|
== | 比较对象是否相等 |
!= | 比较对象是否不相等 |
> | 大于,例如a>b,将比较a与b的大小,a>b返回True,否则返回False |
< | 小于,例如a |
>= | 大于等于,例如a>=b,将比较a与b的大小,a>=b返回True,否则返回False |
<= | 小于等于,例如a<=b,将比较a与b的大小,a<=b返回True,否则返回False |
a = 10 b = 20 print(a == b) # False print(a != b) # True print(a > b) # False print(a < b) # True print(a >= b) # False print(a <= b) # True
1.返回值为bool值
print(True == 1) # True print(False == 0) # True
==比较数值(int与str不能直接比较)
print(2.0 == 2) # True print("2" == 2) # False
字符串与字符串之间是比较ASCII值
# True print("abc" < "xyz") # 97 98 99 < 120 121 122
连续比较,python的解释机制
print(3 > 2 > 1) # True print(3 > 2 > 2) # False print((3 > 2) > 1) # False
赋值运算符
运算符 | 描述 |
---|---|
= | 常规赋值运算符,将运算结果赋值给变量 |
+= | 加法赋值运算符,例如 a+=b 等效于 a=a+b |
-= | 减法赋值运算符,例如 a-=b 等效于 a=a-b |
*= | 乘法法赋值运算符,例如 a*=b 等效于 a=a*b |
/= | 除法赋值运算符,例如 a/=b 等效于 a=a/b |
//= | 取整除赋值运算符,例如 a//=b 等效于 a=a//b |
%= | 取模赋值运算符,例如 a%=b 等效于 a=a%b |
**= | 幂运算赋值运算符,例如 a**=b 等效于 a=a*b |
a = 1 # 将等号右边 赋值 等号左边 a = a + 1 # 先等号右边计算 再赋值给 等号左边 a += 1 # a = a + 1
逻辑运算符
运算符 | 描述 |
---|---|
and | 与运算,如果a 为False,a and b返回False 否则返回y的计算值 |
or | 或运算,如果a非0,返回a的值,否则返回b的值 |
not | 非运算,如果a为True,返回False,如果a为False,返回True |
a = 10 b = 20 print(a and b) # 20 print(a or b) # 10 print(not a) # False
a and b 两者都为True时结果才为True
a or b 两者有一个为True则结果就为True
短路(懒惰)原则
False and True 当and运算符时,遇到第一个为False则不会往后了
True or False 当or运算符时,遇到第一个为True则不会往后了
成员运算符
运算符 | 描述 |
---|---|
in | 如果在指定的序列中找到值返回True,否则返回False |
not in | 如果在指定的序列中找到值返回True,否则返回False |
list1 = [1, 2, 3, 4, 5] a = 1 if a in list1: print("a是list1的元素之一") else: print("a不是list1的元素")
身份运算符
运算符 | 描述 |
---|---|
is | 判断两个标识符是不是引用自一个对象 |
is not判断两个标识符是不是引用自不同对象 | |
is 和比较运算符 == 的区别 | |
is 用于判断两个变量是否引自同一个对象(可使用id()查看),而 ==用于判断变量的值是否相等! |
a = [1, 2, 3] b = [1, 2, 3] # 可通过id()查看内存地址 print(id(a)) # 2042443551304 print(id(b)) # 2042443551816 print(a is b) # False print(a == b) # True
a = 2 b = 2.0 # 可通过id()查看内存地址 print(id(a)) # 140722443350320 print(id(b)) # 2336678499216 print(a is b) # False print(a == b) # True
三目运算符
三目运算符的表示方法:True_statements if expression else False_statements
a = 1 b = 2 # a+b不大于3执行后面的else语句 b-a = 1 print(a+b if a+b>3 else b-a)
运算符优先级
运算符 | 描述 |
---|---|
** | 指数(最高优先级) |
*/%// | 乘,除,取模和取整除 |
± | 加法减法 |
<= >= | 比较运算符 |
== != | 等于运算符 |
= %= 、= 、、=-= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not or and | 逻辑运算符 |
到此这篇关于python常见的运算符及用法的文章就介绍到这了,更多相关python运算符内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
X 关闭
X 关闭
- 1转转集团发布2022年二季度手机行情报告:二手市场“飘香”
- 2充电宝100Wh等于多少毫安?铁路旅客禁止、限制携带和托运物品目录
- 3好消息!京东与腾讯续签三年战略合作协议 加强技术创新与供应链服务
- 4名创优品拟通过香港IPO全球发售4100万股 全球发售所得款项有什么用处?
- 5亚马逊云科技成立量子网络中心致力解决量子计算领域的挑战
- 6京东绿色建材线上平台上线 新增用户70%来自下沉市场
- 7网红淘品牌“七格格”chuu在北京又开一家店 潮人新宠chuu能红多久
- 8市场竞争加剧,有车企因经营不善出现破产、退网、退市
- 9北京市市场监管局为企业纾困减负保护经济韧性
- 10市场监管总局发布限制商品过度包装标准和第1号修改单