Python运算符

本文介绍了Python中的各种运算符,包括算数运算符如加法、减法、乘法等,比较运算符如等于、不等于、大于等,逻辑运算符如and、or、not,以及赋值运算符、位运算符、成员运算符和身份运算符的使用和示例。
摘要由CSDN通过智能技术生成

算数运算符

Python中的算数运算符包括:

  1. 加法运算符(+):将两个数相加,或将字符串拼接起来。
  2. 减法运算符(-):将左边的数减去右边的数。
  3. 乘法运算符(*):将两个数相乘,或将字符串重复多次。
  4. 除法运算符(/):将左边的数除以右边的数(结果为浮点数)。
  5. 整除运算符(//):将左边的数除以右边的数(结果为整数)。
  6. 取模运算符(%):取左边的数除以右边的数的余数。
  7. 幂运算符(**):将左边的数的幂次方。

以下是一些例子:

a = 10
b = 3
# 加法
print(a + b)  # 13
# 减法
print(a - b)  # 7
# 乘法
print(a * b)  # 30
# 除法
print(a / b)  # 3.3333333333333335
# 整除
print(a // b) # 3
# 取模
print(a % b)  # 1
# 幂
print(a ** b) # 1000

对于字符串,加法运算符(+)可以将两个字符串合并成一个:

s1 = 'hello'
s2 = 'world'
print(s1 + s2)  # 'helloworld'

乘法运算符(*)则可以将一个字符串重复多次:

s = 'hello'
print(s * 3)  # 'hellohellohello'

比较运算符

Python中的比较运算符用于比较两个值的大小关系,并返回True或False。常用的比较运算符有:

  1. 等于运算符(==):用于比较两个值是否相等。
  2. 不等于运算符(!=):用于比较两个值是否不相等。
  3. 大于运算符(>):用于比较左边的值是否大于右边的值。
  4. 小于运算符(<):用于比较左边的值是否小于右边的值。
  5. 大于等于运算符(>=):用于比较左边的值是否大于等于右边的值。
  6. 小于等于运算符(<=):用于比较左边的值是否小于等于右边的值。

以下是一些例子:

a = 10
b = 5
# 等于
print(a == b)  # False
# 不等于
print(a != b)  # True
# 大于
print(a > b)  # True
# 小于
print(a < b)  # False
# 大于等于
print(a >= b)  # True
# 小于等于
print(a <= b)  # False

比较运算符的返回值是一个布尔值,即True或False。可以将其保存到变量中,或者直接用于条件语句中。

逻辑运算符

Python中的逻辑运算符用于把两个或多个逻辑表达式连接起来,形成一个新的逻辑表达式,并返回True或False。常用的逻辑运算符有:

  1. 与运算符(and):用于连接两个逻辑表达式,当两个表达式都为True时,返回True,否则返回False。连接两个值时,优先返回假值,否则返回右侧真值
  2. 或运算符(or):用于连接两个逻辑表达式,当两个表达式都为False时,返回False,否则返回True。连接两个值时,优先返回真值,否则返回左侧假值
  3. 非运算符(not):用于将一个逻辑表达式的值取反,如果表达式为True,则返回False;如果表达式为False,则返回True。

优先级为not>and>or

以下是一些例子:

a = 10
b = 5
c = 0
# 与运算符
print(a and b)#5
print(a and c)#0
print(a > b and b > c)  # True
print(a > b and b < c)  # False
# 或运算符
print(a or b)#10
print(a or c)#10
print(a > b or b < c)  # True
print(a < b or b < c)  # False
# 非运算符
print(not a > b)  # False
print(not b < c)  # True
#
print(a or b and not c)#10

逻辑运算符的返回值是一个布尔值,即True或False。可以将其保存到变量中,或者直接用于条件语句中。

赋值运算符

Python中赋值运算符用于将一个值或表达式的结果赋值给一个变量。常见的赋值运算符有:

  1. 等于号(=):用于将右边的值赋值给左边的变量。
  2. 加等于(+=):将右边的值加上左边的变量的值,并将结果赋值给左边的变量。
  3. 减等于(-=):将右边的值减去左边的变量的值,并将结果赋值给左边的变量。
  4. 乘等于(*=):将右边的值乘以左边的变量的值,并将结果赋值给左边的变量。
  5. 除等于(/=):将左边的变量的值除以右边的值,并将结果赋值给左边的变量。
  6. 取模等于(%=):将左边的变量的值取模于右边的值,并将结果赋值给左边的变量。
  7. 幂等于(**=):将左边的变量的值求幂,幂的指数是右边的值,并将结果赋值给左边的变量。
  8. 右移等于(>>=):将左边的变量的二进制值右移,移动的位数是右边的值,并将结果赋值给左边的变量。
  9. 左移等于(<<=):将左边的变量的二进制值左移,移动的位数是右边的值,并将结果赋值给左边的变量。
  10. 位与等于(&=):将左边的变量的二进制值做位与运算,相同位置都是1,结果才是1。右边的值是位与运算的另一个运算数,并将结果赋值给左边的变量。
  11. 位或等于(|=):将左边的变量的二进制值做位或运算,相同位置都是0,结果才是0。右边的值是位或运算的另一个运算数,并将结果赋值给左边的变量。
  12. 位异或等于(^=):将左边的变量的二进制值做位异或运算,相同位置相同为0,不同为1.右边的值是位异或运算的另一个运算数,并将结果赋值给左边的变量。

以下是一些例子:

a = 10  # 等于号
print(a)#10
a=10
a += 5  # 加等于
print(a)#15
a=10
a -= 5  # 减等于
print(a)#5
a=10
a *= 2  # 乘等于
print(a)#20
a=10
a /= 2  # 除等于
print(a)#5.0
a=10
a %= 3  # 取模等于
print(a)#1
a=10
a **= 2  # 幂等于
print(a)#100
a=10
a >>= 2  # 右移等于
print(a)#2
a=10
a <<= 2  # 左移等于
print(a)#40
a=10
a &= 5  # 位与等于
print(a)#0
a=10
a |= 5  # 位或等于
print(a)#15
a=10
a ^= 5  # 位异或等于
print(a)#15

赋值运算符的返回值与左边的变量的值相同。

位运算符

Python中有六个位运算符,它们分别是:

  1. 按位与(&):两个二进制数的位都为1时,结果的对应位才为1,否则为0。

  2. 按位或(|):两个二进制数的位中只要有一个为1时,结果的对应位就为1,否则为0。

  3. 按位异或(^):两个二进制数的位不同时,结果的对应位才为1,否则为0。

  4. 按位取反(~):将一个二进制数的每个位取反,1变为0,0变为1。

  5. 左移(<<):将一个二进制数向左移动若干位,右边用0补齐。

  6. 右移(>>):将一个二进制数向右移动若干位,左边用0或1补齐,取决于它的符号位。

以下是一些例子:

a = 0b1010  # 二进制数10
b = 0b1100  # 二进制数12

c = a & b  # 按位与,结果是0b1000(8)
d = a | b  # 按位或,结果是0b1110(14)
e = a ^ b  # 按位异或,结果是0b0110(6)
f = ~a     # 按位取反,结果是-11(注意负数的表示方法)
g = b << 2 # 左移2位,结果是0b110000(48)
h = b >> 2 # 右移2位,结果是0b0011(3)

注意,在Python中,整型数据是以补码形式保存的(即采用二进制补码表示来表示负数),因此在进行位运算时需要注意符号位。

成员运算符

Python中的成员运算符用于检查一个值或变量是否属于一个集合或序列。
Python中有两个成员运算符,分别是 innot in

  • in:如果在指定的序列中找到值,则返回 True
  • not in:如果在指定的序列中没有找到值,则返回 True

以下是一些例子:

# 判断某个元素是否在列表中
my_list = [1, 2, 3, 4, 5]
print(3 in my_list)  # True
print(6 in my_list)  # False

# 判断某个键是否在字典中
my_dict = {'name': 'Alice', 'age': 20, 'gender': 'Female'}
print('name' in my_dict)    # True
print('height' in my_dict)  # False

# 判断字符串中是否包含某个子串
my_str = 'Hello, World!'
print('World' in my_str)   # True
print('Python' in my_str)  # False

需要注意的是,成员运算符只能用于集合或序列类型的数据,比如列表、元组、字典、字符串等。其他类型的数据如果想要判断是否相等,应该使用相应的比较运算符(如 ==)。

身份运算符

Python中的身份运算符用于比较两个对象的内存地址是否相同。

  • is :判断两个变量是否指向同一个对象,如果是则返回 True,否则返回 False
  • is not :判断两个变量是否指向不同的对象,如果是则返回 True,否则返回 False

例如:

a = [1,2,3]
b = [1,2,3]
c = a

print(a is b)       # False
print(a is not b)   # True
print(a is c)       # True
print(a is not c)   # False

在上面的例子中, ac 指向同一个对象,所以使用 is 运算符比较时返回 True。而 ba 的内存地址不同,所以使用 is 运算符比较时返回 False。Python中的身份运算符用于比较两个对象的内存地址是否相同。

  • is :判断两个变量是否指向同一个对象,如果是则返回 True,否则返回 False
  • is not :判断两个变量是否指向不同的对象,如果是则返回 True,否则返回 False

例如:

a = [1,2,3]
b = [1,2,3]
c = a

print(a is b)       # False
print(a is not b)   # True
print(a is c)       # True
print(a is not c)   # False

在上面的例子中, ac 指向同一个对象,所以使用 is 运算符比较时返回 True。而 ba 的内存地址不同,所以使用 is 运算符比较时返回 False

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值