Python基础学习(七):运算符

Python 提供了丰富的运算符,用于执行各种操作,包括算术运算、比较运算、逻辑运算、位运算等。本文将详细介绍 Python 中的各类运算符及其用法,并通过示例帮助你更好地理解和掌握。


1. 算术运算符

算术运算符用于执行基本的数学运算。

1.1 常见运算符

运算符 描述 示例
+ 加法 3 + 2 → 5
- 减法 5 - 3 → 2
* 乘法 2 * 3 → 6
/ 除法 10 / 2 → 5
% 取模(取余数) 10 % 3 → 1
** 幂运算 2 ** 3 → 8
// 整除(取整数部分) 10 // 3 → 3

1.2 课后练习

练习 1:买西瓜

超市的西瓜 13 元一个,问:你拿 100 元可以买几个西瓜,剩余几元?

print('可以买', 100 // 13, '个西瓜,剩余', 100 % 13, '元')
练习 2:计算时间

现在是 18:02:31,请问距离凌晨 0:0:0 过了多少秒?

second = 18 * 60 * 60 + 2 * 60 + 31
print('距离凌晨 0:0:0 过了', second, '秒')
练习 3:时间转换

已知从凌晨 0:0:0 到现在已经过了 63320 秒,请问现在是几时几分几秒?

s = 63320
hour = s // 3600
minute = s % 3600 // 60
second = s % 60
print('现在是:', hour, ':', minute, ':', second)

2. 比较运算符

比较运算符用于比较两个值并返回布尔值 True 或 False

运算符 描述 示例
== 等于 3 == 3 → True
!= 不等于 3 != 2 → True
< 小于 3 < 5 → True
> 大于 5 > 3 → True
<= 小于等于 3 <= 3 → True
>= 大于等于 5 >= 3 → True

3. 逻辑运算符

逻辑运算符用于连接布尔值并返回布尔值。

3.1 常见运算符

运算符 描述 示例
and 与(逻辑与) True and False → False
or 或(逻辑或) True or False → True
not 非(逻辑非) not True → False

3.2 运算规则

  • and:两者同时为真,结果才为真。

  • or:只要有一个为真,结果就为真。

  • not:将表达式的结果取反。

3.3 常见错误

 A and B 结果为False时 那么B表达式就不运行 整个表达式A and B 的结果就为A表达式

 A and B 结果为True时  整个表达式A and B 的结果就为B表达式

def fn1():
    print("fn1执行了")
    return 0
def fn2():
    print("fn2执行了")
    return 200
re=fn1() and fn2() # re结果为False,fn2并未执行
print(re)#0 

A or B 结果为True 那么B表达式就不运行 整个表达式A and B 的结果就为A表达式
A or B 结果为False  整个表达式A and B 的结果就为B表达式

x1=20
x2=30
re=x1>18 or x2>18
print(re) #True

x1=0
x2=200
re=x1 or x2
print(re) #200

3.4 练习

写一个程序,输入一个整数,判断这个整数是奇数还是偶数。

x = int(input("请输入一个整数: "))
if x % 2 == 0:
    print(x, "是偶数")
else:
    print(x, "是奇数")

4. 赋值运算符

赋值运算符用于给变量赋值。

运算符 描述 示例
= 赋值 x = 10
+= 加法赋值 x += 5 → x = x + 5
-= 减法赋值 x -= 3 → x = x - 3
*= 乘法赋值 x *= 2 → x = x * 2
/= 除法赋值 x /= 2 → x = x / 2
%= 取模赋值 x %= 3 → x = x % 3
**= 幂运算赋值 x **= 2 → x = x ** 2
//= 整除赋值 x //= 2 → x = x // 2

5. 位运算符

位运算符用于对整数按位进行操作。

5.1 常见运算符

运算符 描述 示例
& 按位与 0b1011 & 0b1101 → 0b1001
| 按位或 0b1011 | 0b1101 → 0b1111
^ 按位异或 0b1011 ^ 0b1101 → 0b0110
~ 按位取反 ~0b1011 → -0b1100
<< 左移位 0b1011 << 2 → 0b101100
>> 右移位 0b1011 >> 2 → 0b0010

6. 身份运算符

身份运算符用于比较对象的内存地址。

运算符 描述 示例
is 判断对象是否相同 a is b
is not 判断对象是否不同 a is not b

7. 成员运算符

成员运算符用于检查一个值是否是某个集合的成员。

运算符 描述 示例
in 判断值是否存在于序列中 5 in [1, 2, 3, 4, 5] → True
not in 判断值是否不存在于序列中 6 not in [1, 2, 3, 4, 5] → True

8. 三目运算符

三目运算符(条件运算符)用于简化条件判断。

语法

value_if_true if condition else value_if_false

示例

max_value = a if a > b else b

9. 运算符优先级

运算符的优先级决定了表达式中运算的执行顺序。以下是常见运算符的优先级(从高到低):

  1. ()(括号)

  2. **(幂运算)

  3. ~(按位取反)

  4. */%//(乘法、除法、取模、整除)

  5. +-(加法、减法)

  6. <<>>(左移、右移)

  7. &(按位与)

  8. ^(按位异或)

  9. |(按位或)

  10. ==!=<><=>=(比较运算符)

  11. isis not(身份运算符)

  12. innot in(成员运算符)

  13. not(逻辑非)

  14. and(逻辑与)

  15. or(逻辑或)


10. 总结

  • 算术运算符:用于数学运算。

  • 比较运算符:用于比较值。

  • 逻辑运算符:用于布尔运算。

  • 赋值运算符:用于变量赋值。

  • 位运算符:用于按位操作。

  • 身份运算符:用于比较对象内存地址。

  • 成员运算符:用于检查值是否在序列中。

  • 三目运算符:简化条件判断

你可能感兴趣的:(python,学习,开发语言)