Python 运算符和表达式

运算符是代表一定运算功能的符号,可以对常量、变量等进行处理。由各种运算符和运算对象组成的式子称为表达式。

常见的运算符和表达式

算数运算符和算术运算表达式

算数运算符用于对算数运算对象进行算术运算。由算数运算符与算数运算对象组成的式子称为算术运算表达式。

运算符名称算数运算表达式实例表达式结果(设 a = 3,b = 4)
+a + b7
-a - b-1
*a * b12
/a / b0.75
%取模a % b3
**a ** b64
//整除a // b0

算数运算符两边的操作数一般为整型或浮点型,特殊情况下也可以是布尔类型或复数类型。当参与算术运算的两个操作数是整型或浮点型时,其运算结果类型也是整型或浮点型。

print(2 / 3)  # 一般情况下,python中的除法运算结果均为 浮点数
print(2 // 3)  # 只有当整除时,才会得到整型的结果
关系运算符和关系运算表达式

关系运算符用来比较两个对象之间的关系。对象可以是数或字符串等常量、变量或表达式。由关系运算符与比较对象组成的表达式称为关系运算表达式。关系表达式的结果为真返回True,否则返回 False。

运算符描述实例表达式结果(设 a = 20,b = 30)
==等于a == bFalse
!=不等于a != bTrue
>大于a > bFalse
<小于a < bTrue
>=大于等于a >= bFalse
<=小于等于a <= bTrue
赋值运算符和赋值运算表达式

赋值运算符用来将表达式的结果赋给变量。由赋值运算符与赋值运算对象组成的式子称为赋值运算表达式。

运算符名称实例表达式结果(设 a = 4, b = 3, c = 2)
=简单赋值运算符c = a + bc = 7
+=加法赋值运算符c += a 等价于 c = c + ac = 6
-=减法赋值运算符c -= a 等价于 c = c - ac = -2
*=乘法赋值运算符c *= a 等价于 c = c * ac = 8
/=除法赋值运算符c /= a 等价于 c = c / ac = 0.5
%=取模赋值运算符c %= a 等价于 c = c % ac = 2
**=幂赋值运算符c **= a 等价于 c = c ** ac = 16
//=取整除赋值运算符c //= a 等价于 c = c // ac = 0
逻辑运算符和逻辑运算表达式

逻辑运算符用来判断逻辑运算对象之间的关系。由逻辑运算符与逻辑运算对象组成的式子称为逻辑运算表达式。

运算符名称逻辑表达式描述
and逻辑“与”x and yx 为 True 或非 0,返回 y,否则返回 x
or逻辑“或”x or yx 为 True 或非 0,返回 x,否则返回 y
not逻辑“非”not xx 为 True 或非 0,返回 False,否则返回 True
'''
其实不用看表格描述,只要清楚逻辑运算中(中学数学有教过的)
与:两边同真才为真
或:一边为真就为真
非:真的非为假

真值:除 0 以外的其余一切均为真值
'''
位运算符和位运算表达式

位运算符用来把两个运算对象按照二进制进行位运算。由位运算符与位运算对象组成的式子称为位运算表达式。

运算符名称实例表达式结果(a = 60(0011 1100), b = 13(0000 1101))
&按位与a & b12(0000 1100)
|按位或a | b61(0011 1101)
^按位异或a ^ b49(0011 0001)
~按位取反~ a-61(1100 0011)
<<左移位a << 2240(1111 0000)
>>右移位a >> 215(0000 1111)
# 使用"^"运算符对字符加密和解密 
key = input("请输入加密密钥: ")
enc = input("请输入要加密的字符: ")
dec = ord(key) ^ ord(enc)     # 对字符加密
print("加密结果: ", chr(dec))
enc_1 = ord(key) ^ dec        # 对字符解密
print("解密结果: ", chr(enc_1))

请输入加密密钥: 1
请输入要加密的字符: h
加密结果:  Y
解密结果:  h
成员运算符和成员运算表达式

成员运算符用来判断两个对象之间的关系。由成员运算符与成员运算对象组成的式子称为成员运算表达式。

运算符描述实例结果
in判断对象是否在序列中obj in sequenceobj 在 sequence 中返回 True,否则返回 False
not in判断对象是否不在序列中obj not in sequenceobj 不在 sequence 中返回 True,否则返回 False
ls = [3, 6, 5, '洛梦裳', '白浅予', '我的']
a = '3' in ls
b = 3 not in ls
print("a = ", a, "b = ", b)

a =  False b =  False
身份运算符和身份运算表达式
运算符描述实例结果
is判断两个标识符是不是引用自同一个对象x is y引用同一个对象返回 True, 否则返回 False
is not判断两个标识符是不是引用自不同对象x is not y引用不同对象返回 True, 否则返回 False

is 运算符, == 运算符和 operator 中的 eq() 区别:
a == b :比较对象a 和对象 b 的值是否相等。相等返回 True, 不相等返回 False。operator.eq(a, b) 类似。
a is b:比较对象a 和对象 b 是否有相同的引用,即 id 是否相等。相同的返回 True,否则返回 False。

a = 3
print("id(a) = ", id(a))
b = 3
print("id(b) = ", id(b))
c = '3'
print("id(c) = ", id(c))
res1 = a is b
res2 = b is not c
print("结果1: ", res1, "结果2: ", res2)

id(a) =  2526965727536
id(b) =  2526965727536
id(c) =  2526967051696
结果1:  True 结果2:  True

运算符优先级

当多种运算符出现在同一个表达式中时,按照运算符的优先级决定运算次序,优先级高的运算将先得到处理。下表中等级1的优先级最高。

等级运算符名称
1(), [], {}括号
2**指数运算
3~, +, -按位取反,一元加号和减号
4*, /, %, //乘,除,取模和取整除
5+, -加法,减法
6>>, <<右移,左移运算符
7&位与
8^, |异或,位或
9<, <=, >, >=比较运算符
10==, !=等于,不等于运算符
11=, %=, /=, //=, -=, +=, *=, **=赋值运算符
12is, is not身份运算符
13in, not in成员运算符
14not, and, or逻辑运算符

补充说明

  • Python 中的一些运算符不仅可用于数字等运算,还可以用于对字符串、列表和元组等组合对象的运算。
  • Python支持 ++i,–i 运算符,但含义和其他语言的不同。
  • Python 不支持 i++, i-- 运算符.

>>> i = 2
>>> ++i    # 等价于 +(+i)
2
>>> --i     # 等价于 -(-i)
2
>>> 2--3    # 等价于 2-(-3)
5
>>> i++
  File "<stdin>", line 1
    i++
       ^
SyntaxError: invalid syntax
>>> i--
  File "<stdin>", line 1
    i--
       ^
SyntaxError: invalid syntax

写在最后:
首先,如果本篇文章有任何错误,烦请读者告知!不胜感激!
其次,本篇文章仅用于日常学习以及学业复习,如需转载等操作请告知作者(我)一声!
最后,本文会持续修改和更新,如果对本分栏的其他知识也感兴趣,可以移步目录导航专栏,查看本分栏的目录结构,也更方便对于知识的系统总结!
兄弟姐妹们,点个赞呗!
感谢!笔芯!

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值