Python算术运算符
实例:
a=5
b=2
c=0
c=a+b #加法,a与b相加
print("c=a+b,c的值为:",c)
c=a-b #减法,a与b相减
print("c=a-b,c的值为:",c)
c=a*b #乘法,a与b相乘
print("c=a*b,c的值为:",c)
c=a/b #除法,得到的结果为float类型
print("c=a/b,c的值为:", c)
c=a%b #取余,a除b的余数
print("c=a%b,c的值为:", c)
c=a**b #幂,a的b次幂
print ("c=a**b,c的值为:", c)
c=a//b #取整,a除b得到商的整数部分
print ("c=a//b,c的值为:", c)
输出结果:
c=a+b,c的值为: 7
c=a-b,c的值为: 3
c=a*b,c的值为: 10
c=a/b,c的值为: 2.5
c=a%b,c的值为: 1
c=a**b,c的值为: 25
c=a//b,c的值为: 2
Python比较运算符
实例:
a = 5
b = 2
if ( a == b ): #等于 - 比较对象是否相等
print ("a 等于 b")
else:
print ("a 不等于 b")
if ( a != b ): #不等于 - 比较两个对象是否不相等
print ("a 不等于 b")
else:
print ("a 等于 b")
if ( a < b ): #小于
print ("a 小于 b")
else:
print ("a 大于等于 b")
if ( a > b ): #大于
print ("a 大于 b")
else:
print ("a 小于等于 b")
if ( a <= b ): #小于等于
print ("a 小于等于 b")
else:
print ("a 大于 b")
if ( b >= a ): #大于等于
print ("b 大于等于 a")
else:
print ("b 小于 a")
输出结果:
a 不等于 b
a 不等于 b
a 大于等于 b
a 大于 b
a 大于 b
b 小于 a
Python赋值运算符
实例:
a = 5
b = 2
c = 0
c = a + b # “=” 简单的赋值运算符,将 a + b 的运算结果赋值为 c
print ("c=a+b,c的值为:",c)
c += a #加法赋值运算符,等效于 c = c + a
print ("c += a,c的值为:", c)
c *= a #乘法赋值运算符,等效于 c = c * a
print ("c *= a, c的值为:", c)
c /= a #除法赋值运算符,等效于 c = c / a
print ("4 - c 的值为:", c)
c = 2
c %= a #取模赋值运算符,等效于 c = c % a
print ("c %= a,c 的值为:", c)
c **= a #幂赋值运算符,等效于 c = c ** a
print ("c **= a,c 的值为:", c)
c //= a #取整除赋值运算符, 等效于 c = c // a
print ("7 - c 的值为:", c)
c=7
c -= a #减法赋值运算符,等效于 c = c - a
print ("c -= a,c的值为:", c)
输出结果:
c=a+b,c的值为: 7
c += a,c的值为: 12
c *= a, c的值为: 60
4 - c 的值为: 12.0
c %= a,c 的值为: 2
c **= a,c 的值为: 32
7 - c 的值为: 6
c -= a,c的值为: 2
Python位运算符
实例:
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = 0
c = a & b # 12 = 0000 1100,按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
print ("c = a & b,c 的值为:", c)
c = a | b # 61 = 0011 1101,按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。
print ("c = a | b,c 的值为:", c)
c = a ^ b # 49 = 0011 0001,按位异或运算符:当两对应的二进位相异时,结果为1
print ("c = a ^ b,c 的值为:", c)
c = ~a # -61 = 1100 0011,按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1。
print ("c = ~a,c 的值为:", c)
c = a << 2 # 240 = 1111 0000,左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。
print ("c = a << 2,c 的值为:", c)
c = a >> 2 # 15 = 0000 1111,右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数
print ("c = a >> 2,c 的值为:", c)
输出结果:
c = a & b,c 的值为: 12
c = a | b,c 的值为: 61
c = a ^ b,c 的值为: 49
c = ~a,c 的值为: -61
c = a << 2,c 的值为: 240
c = a >> 2,c 的值为: 15
Python逻辑运算符
实例:
a = 10
b = 20
if ( a and b ):
print ("1 - 变量 a 和 b 都为 true")
else:
print ("1 - 变量 a 和 b 有一个不为 true")
if ( a or b ):
print ("2 - 变量 a 和 b 都为 true,或其中一个变量为 true")
else:
print ("2 - 变量 a 和 b 都不为 true")
# 修改变量 a 的值
a = 0
if ( a and b ):
print ("3 - 变量 a 和 b 都为 true")
else:
print ("3 - 变量 a 和 b 有一个不为 true")
if ( a or b ):
print ("4 - 变量 a 和 b 都为 true,或其中一个变量为 true")
else:
print ("4 - 变量 a 和 b 都不为 true")
if not( a and b ):
print ("5 - 变量 a 和 b 都为 false,或其中一个变量为 false")
else:
print ("5 - 变量 a 和 b 都为 true")
输出结果:
1 - 变量 a 和 b 都为 true
2 - 变量 a 和 b 都为 true,或其中一个变量为 true
3 - 变量 a 和 b 有一个不为 true
4 - 变量 a 和 b 都为 true,或其中一个变量为 true
5 - 变量 a 和 b 都为 false,或其中一个变量为 false
Python成员运算符
实例:
a = 10
b = 20
list = [1, 2, 3, 4, 5 ];
if ( a in list ): #"in",如果在指定的序列中找到值返回 True,否则返回 False。
print ("1 - 变量 a 在给定的列表中 list 中")
else:
print ("1 - 变量 a 不在给定的列表中 list 中")
if ( b not in list ): #"not in",如果在指定的序列中没有找到值返回 True,否则返回 False。
print ("2 - 变量 b 不在给定的列表中 list 中")
else:
print ("2 - 变量 b 在给定的列表中 list 中")
# 修改变量 a 的值
a = 2
if ( a in list ):
print ("3 - 变量 a 在给定的列表中 list 中")
else:
print ("3 - 变量 a 不在给定的列表中 list 中")
输出结果:
1 - 变量 a 不在给定的列表中 list 中
2 - 变量 b 不在给定的列表中 list 中
3 - 变量 a 在给定的列表中 list 中
Python身份运算符
身份运算符用于比较两个对象的存储单元
实例:
a = 20
b = 20
if ( a is b ):
print ("1 - a 和 b 有相同的标识")
else:
print ("1 - a 和 b 没有相同的标识")
if ( id(a) == id(b) ):
print ("2 - a 和 b 有相同的标识")
else:
print ("2 - a 和 b 没有相同的标识")
# 修改变量 b 的值
b = 30
if ( a is b ):
print ("3 - a 和 b 有相同的标识")
else:
print ("3 - a 和 b 没有相同的标识")
if ( a is not b ):
print ("4 - a 和 b 没有相同的标识")
else:
print ("4 - a 和 b 有相同的标识")
输出结果:
1 - a 和 b 有相同的标识
2 - a 和 b 有相同的标识
3 - a 和 b 没有相同的标识
4 - a 和 b 没有相同的标识
is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。
Python运算符优先级
以下列出了从最高到最低优先级的所有运算符:
实例:
a = 20
b = 10
c = 15
d = 5
e = 0
e = (a + b) * c / d #( (20+10) * 15 ) / 5
print ("(a + b) * c / d 运算结果为:", e)
e = ((a + b) * c) / d # ((20+10) * 15 ) / 5
print ("((a + b) * c) / d 运算结果为:", e)
e = (a + b) * (c / d); # (20+10) * (15/5)
print ("(a + b) * (c / d) 运算结果为:", e)
e = a + (b * c) / d; # 20 + ((10*15)/5)
print ("a + (b * c) / d 运算结果为:", e)
输出结果:
(a + b) * c / d 运算结果为: 90.0
((a + b) * c) / d 运算结果为: 90.0
(a + b) * (c / d) 运算结果为: 90.0
a + (b * c) / d 运算结果为: 50.0