1.6.1 算术运算符
运算符 | 描述 | 实例:以a=10,b=20为例计算 |
---|---|---|
+ | 加 | 两个对象相加a+b输出结果为30 |
- | 减 | 得到负数或是一个数减去另一个数a-b输出结果-10 |
* | 乘 | 两个数相乘或是返回一个不被重复若干次的字符串a*b输出结果200 |
/ | 除 | b / a输出结果2,两个int类型相除返回数据类型为float |
// | 取整数 | 返回商的整数部分。例:9//2输出结果4;9.0//2.0输出结果4.0 |
% | 取余数 | 返回除法的余数b % a输出结果0 |
** | 指数 | a**b为10的20次方,输出结果100000000000000000000 |
注意:混合运算时优先级顺序为 **
高于 * / % //
高于+ -
,为了避免歧义,建议使用()
来处理运算的优先级,而且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。
num1 = 3 num2 = 5 result = num1 + num2 print("结果为:", result)
- 相加输出结果:
结果为: 8
num1 = 3 num2 = 5 result = num1 - num2 print("结果为:", result)
- 相减输出结果:
结果为: -2
num1 = 3 num2 = 5 result = num1 * num2 print("结果为:", result)
- 相乘输出结果:
结果为: 15
# 两个 int 类型的数据进行相除操作,那么返回的类型是 float num1 = 3 num2 = 5 result = num1 / num2 print("结果为:", result, type(result))
- 相除输出结果:
结果为: 0.6 <class 'float'>
# 修改变量保存的数据 num1 = 3 num2 = 2 result = num1 // num2 print("结果为:", result, type(result))
- 求商输出结果:
结果为: 1 <class 'int'>
num1 = 3 num2 = 2 result = num1 % num2 print("结果为:", result, type(result))
- 求余输出结果:
结果为: 1 <class 'int'>
num1 = 3 num2 = 2 result = num1 ** num2 print("结果为:", result, type(result)) result = num2 ** num1 print("结果为:", result, type(result))
- 求幂输出结果:
结果为: 9 <class 'int'>
结果为: 8 <class 'int'>
1.6.2 赋值运算符:=
有等号执行等号右边的代码,把结果再赋值给等号左边的变量
# 定义一个变量,存储数据10 num1 = 10 print(num1, type(num1))
- 输出结果:
10 <class 'int'>
num2 = 10 + 20 * 3 / 5 print(num2, type(num2))
- 输出结果:
22.0 <class 'float'>
python 执行可以给多个变量,分别赋值
str1, str2 = "hello", "world" print(str1, str2)
- 输出结果:
hello world
注意点:python 里面的赋值运算符可以执行连续赋值
num5 = num4 = num3 = 3.4 print(num3, num4, num5)
- 输出结果:
3.4 3.4 3.4
1.6.3 复合赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
+ = | 加法赋值运算符 | c + = a 等效于 c = c + a |
- = | 减法赋值运算符 | c - = a 等效于 c = c - a |
* = | 乘法赋值运算符 | c * = a 等效于 c = c * a |
/ = | 除法赋值运算符 | c / = a 等效于 c = c / a |
% = | 取模赋值运算符 | c % = a 等效于 c = c % a |
** = | 幂赋值运算符 | c ** = a 等效于 c = c ** a |
// = | 取整除赋值运算符 | c // = a 等效于 c = c // a |
注意:在Python
中不支持 + +
或者 - -
num1 = 3 num2 = 4 num1 += num2 # --> num1 = num1 + num2 print("num1的值:", num1, "num2的值:", num2)
- 输出结果:
num1的值: 7 num2的值: 4
num1 = 3 num2 = 4 num1 -= num2 # --> num1 = num1 - num2 print("num1的值:", num1, "num2的值:", num2)
- 输出结果:
num1的值: 3 num2的值: 4
num1 = 3 num2 = 4 num1 *= num2 # --> num1 = num1 * num2 print("num1的值:", num1, "num2的值:", num2)
- 输出结果:
num1的值: 12 num2的值: 4
num1 = 3 num2 = 4 num1 /= num2 # --> num1 = num1 / num2 print("num1的值:", num1, "num2的值:", num2)
- 输出结果:
num1的值: 3.0 num2的值: 4
num1 = 3 num2 = 4 num1 %= num2 # --> num1 = num1 % num2 print("num1的值:", num1, "num2的值:", num2)
- 输出结果:
num1的值: 3.0 num2的值: 4
num1 = 3 num2 = 4 num1 **= num2 # --> num1 = num1 ** num2 print("num1的值:", num1, "num2的值:", num2)
- 输出结果:
num1的值: 81.0 num2的值: 4
num1 = 3 num2 = 4 num1 //= num2 # --> num1 = num1 // num2 print("num1的值:", num1, "num2的值:", num2)
- 输出结果:
num1的值: 20.0 num2的值: 4
1.6.4 比较运算符
运算符 | 描述 | 示例 |
---|---|---|
= = | 检查两个操作数的值是否相等,如果相等,则条件变为真 | 如 a = 3,b = 3,则(a = = b)为True |
! = | 检查两个操作数的值是否相等,如果不相等,则条件变为真 | 如 a = 1,b = 3,则(a ! = b)为True |
> | 检查左操作数的值是否大于右操作数的值,如果是,则条件成立 | 如 a = 7,b = 3,则(a > b)为True |
< | 检查左操作数的值是否小于右操作数的值,如果是,则条件成立 | 如 a = 7,b = 3,则(a < b)为False |
> = | 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立 | 如 a = 3,b = 3,则(a > = b)为True |
< = | 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立 | 如 a = 3,b = 3,则(a < = b)为True |
num1 = 3 num2 = 2 if num1 >= num2: print("成立")
- 输出结果:
成立
num1 = 3 num2 = 2 result = num1 <= num2 print(result, type(result))
- 输出结果:
False <class 'bool'>
num1 = 3 num2 = 2 result = num1 > num2 print(result, type(result))
- 输出结果:
True <class 'bool'>
num1 = 3 num2 = 2 result = num1 < num2 print(result, type(result))
- 输出结果:
False <class 'bool'>
num1 = 3 num2 = 2 result = num1 == num2 print(result, type(result))
- 输出结果:
False <class 'bool'>
num1 = 3 num2 = 2 result = num1 != num2 print(result, type(result))
- 输出结果:
True <class 'bool'>
总结:比较运算符返回的类型是bool
类型,比较运算符一般都是结合if
判断来使用,True
表示条件成立,if
语句里面的代码可以执行,False
表示条件不成立,if
语句里面的代码不执行。
1.6.5 逻辑运算符
学习逻辑运算符的目的:通过if
语句可以一次性判断多个条件并且多个条件要有一定的关系。
运算符 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
and | x and y | 布尔“与”:如果x为False,x and y返回False,否则返回y的值 | True and False,返回False |
or | x or y | 布尔“或”:如果x为True,x or y返回True,否则返回y的值 | False or True,返回True |
not | not x | 布尔“非”:如果x为True,not x返回False,否则返回True | not True返回False,not False返回True |
name = input("请输入您的姓名:") age = int(input("请输入您的年龄:"))
- and 表示并且关系,所有的条件都要成立
if name == "肖铎" and age == 20: print("找到你了!")
输出结果:
请输入您的姓名:肖铎
请输入您的年龄:25
- or 表示或者关系,or 左右有其他一个条件成立,if语句就会执行
if name == "肖铎" or age == 20: print("找到你了!")
输出结果:
请输入您的姓名:肖丞
请输入您的年龄:20
找到你了!num = 0
- not 表示取反,Ture 取反成 False,False 取反成 True
if not num > 2: print("成立")
输出结果:
成立
result = not num > 2 print(result)
输出结果:
True
网友评论