【100天精通python】Day4:运算符

目录

1 算数运算符

2 赋值运算符

3 比较(关系运算符)

4 逻辑运算符

5 位运算符

6 运算符的优先级

以下是一个完整的示例代码,用于计算学生三科成绩的分差和平均分:


1 算数运算符

Python中的算术运算符包括:

  • 加法:+
  • 减法:-
  • 乘法:*
  • 除法:/
  • 取余:%
  • 整除://
  • 指数:**

如下表: 

 这些运算符可以用于对数字进行基本的算术操作。例如,可以使用加法运算符将两个数字相加,使用乘法运算符计算两个数字的乘积,使用除法运算符计算两个数字的商等等。

以下是一些示例:

a = 10
b = 5

print(a + b)  # 输出:15
print(a - b)  # 输出:5
print(a * b)  # 输出:50
print(a / b)  # 输出:2.0
print(a % b)  # 输出:0
print(a // b) # 输出:2
print(a ** b) # 输出:100000

2 赋值运算符

Python中的赋值运算符用于将一个值赋给变量。以下是常用的赋值运算符:

  • 等号:=
  • 加法赋值:+=
  • 减法赋值:-=
  • 乘法赋值:*=
  • 除法赋值:/=
  • 取余赋值:%=
  • 整除赋值://=
  • 指数赋值:**=

如下表: 

这些赋值运算符将右侧的值赋给左侧的变量,并将结果保存在变量中。例如:

x = 10
y = 5

x += y  # 等同于 x = x + y
print(x)  # 输出:15

x -= y  # 等同于 x = x - y
print(x)  # 输出:10

x *= y  # 等同于 x = x * y
print(x)  # 输出:50

x /= y  # 等同于 x = x / y
print(x)  # 输出:10.0

x %= y  # 等同于 x = x % y
print(x)  # 输出:0.0

x //= y  # 等同于 x = x // y
print(x)  # 输出:0.0

x **= y  # 等同于 x = x ** y
print(x)  # 输出:0.0

3 比较(关系运算符)

在Python中,比较运算符用于比较两个值之间的关系,返回一个布尔值(True或False)。以下是常用的比较运算符:

  • 等于:==
  • 不等于:!=
  • 大于:>
  • 小于:<
  • 大于等于:>=
  • 小于等于:<=

如下表: 

比较运算符用于比较两个值并确定它们之间的关系。例如:

x = 5
y = 10

print(x == y)  # 输出:False
print(x != y)  # 输出:True
print(x > y)   # 输出:False
print(x < y)   # 输出:True
print(x >= y)  # 输出:False
print(x <= y)  # 输出:True

4 逻辑运算符

在Python中,逻辑运算符用于组合和操作布尔值(True或False)。以下是Python中常用的逻辑运算符:

  • 逻辑与:and
  • 逻辑或:or
  • 逻辑非:not

逻辑与(and)运算符返回两个操作数都为True时的结果为True,否则为False。

逻辑或(or)运算符返回两个操作数中至少一个为True时的结果为True,否则为False。

逻辑非(not)运算符用于取反,将True变为False,将False变为True。

例如:

x = True
y = False

print(x and y)   # 输出:False
print(x or y)    # 输出:True
print(not x)     # 输出:False

5 位运算符

在Python中,位运算符用于对整数的二进制位进行操作。以下是Python中常用的位运算符:

  • 按位与:&
  • 按位或:|
  • 按位异或:^
  • 按位取反:~
  • 左移:<<
  • 右移:>>

这些位运算符可以直接对整数的二进制表示进行操作,对每个位进行逻辑运算。下面是一些示例:

x = 5   # 二进制表示为 0101
y = 3   # 二进制表示为 0011

print(x & y)    # 输出:1,二进制表示为 0001,按位与操作
print(x | y)    # 输出:7,二进制表示为 0111,按位或操作
print(x ^ y)    # 输出:6,二进制表示为 0110,按位异或操作
print(~x)       # 输出:-6,二进制表示为 11111111111111111111111111111010,按位取反操作
print(x << 1)   # 输出:10,二进制表示为 1010,左移操作
print(y >> 1)   # 输出:1,二进制表示为 0001,右移操作

6 运算符的优先级

在Python中,不同的运算符具有不同的优先级。当表达式中包含多个运算符时,Python会根据运算符的优先级来确定它们的执行顺序。下面是Python中常见运算符的优先级从高到低的顺序:

  1. 括号:()
  2. 幂运算:**
  3. 一元正号和负号:+x、-x
  4. 乘法、除法、取模、整除:*、/、%、//
  5. 加法和减法:+、-
  6. 位移运算:<<、>>
  7. 按位与:&
  8. 按位异或:^
  9. 按位或:|
  10. 比较运算符:==、!=、>、<、>=、<=
  11. 逻辑运算符:and、or、not
  12. 赋值运算符:=、+=、-=、*=、/=、%=、//=、**=、&=、|=、^=、>>=、<<=

如下表:

”这只是一般情况下的运算符优先级顺序,实际使用时可以根据需要使用括号来明确指定运算的顺序。当表达式中存在多个运算符时,Python会根据优先级来确定运算的顺序,从高优先级到低优先级逐个执行运算。

以下是一个示例,演示了不同运算符的优先级:

x = 2 + 3 * 4  # 乘法优先级高于加法,结果为 14
y = (2 + 3) * 4  # 括号优先级高于乘法,结果为 20
z = 2 ** 3 ** 2  # 幂运算从右到左结合,结果为 512

总结:以下是Python中常见运算符及其优先级的完整示例代码,该示例演示了常见的算术运算符、赋值运算符、比较运算符、逻辑运算符和位运算符的使用,并展示了运算符优先级的影响。

# 算术运算符
x = 10
y = 3

addition = x + y  # 加法
subtraction = x - y  # 减法
multiplication = x * y  # 乘法
division = x / y  # 除法
modulus = x % y  # 取模
floor_division = x // y  # 整除
exponentiation = x ** y  # 幂运算

# 赋值运算符
a = 5
b = 10

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

# 比较运算符
x = 5
y = 10

equal = x == y  # 等于
not_equal = x != y  # 不等于
greater_than = x > y  # 大于
less_than = x < y  # 小于
greater_than_or_equal = x >= y  # 大于等于
less_than_or_equal = x <= y  # 小于等于

# 逻辑运算符
a = True
b = False

logical_and = a and b  # 逻辑与
logical_or = a or b  # 逻辑或
logical_not = not a  # 逻辑非

# 位运算符
x = 5
y = 3

bitwise_and = x & y  # 按位与
bitwise_or = x | y  # 按位或
bitwise_xor = x ^ y  # 按位异或
bitwise_not = ~x  # 按位非
left_shift = x << y  # 左移
right_shift = x >> y  # 右移

# 运算符优先级示例
result = 2 + 3 * 4 - 5 / 2 ** 2  # 结果为 10.5

print(result)

以下是一个完整的示例代码,用于计算学生三科成绩的平均分和其中两科分差:

# 学生成绩
score_math = 90
score_english = 85
score_science = 92

# 计算分差
diff = score_math - score_english 

# 计算平均分
average = (score_math + score_english + score_science) / 3

# 输出结果
print("分差:", diff)
print("平均分:", average)

猜你喜欢

转载自blog.csdn.net/qq_35831906/article/details/131738393