python基础—运算符
一.数学运算符
+(加)、-(减)、*(乘)、/(除)、%(取余、取模)、//(整除)、**(幂运算)
说明:/ 的运算结果一定是小数,其他运算符的运算结果看运算对象的类型(运算对象中只要有一个是浮点数,结果就是浮点数)
1.+(加)、-(减)、*(乘)、/(除)
+、-、*、/和数学中的+、-、×、÷的功能一样
print(5 + 2)
print(5 - 2)
print(5 * 2)
print(5 / 2)
print(6 / 2)
print(5.5 + 5.5)
2. %
x % y - 求x除以y的余数
print(10 % 3)
print(10 % 4)
# 应用场景1:判断一个数是否能够被另外一个数整除。(判断余数是否为0)
print(10 % 2)
print(9 % 3)
# 应用场景2:取整数的低位数,去掉高位数。(对10或者10的N次方取余)
num = 2892867
print(num % 10)
print(num % 100)
print(num % 1000)
3. //
求商,商向小取整(取和商相邻的两个整数中较小的那个)
print(5 // 2) # 2
print(1.8 // 2) # 0.0
print(-5 // 2) # -3
# 应用场景1:计算一个数中有多少个完整的另外一个数。
# 案例:100元可以买多少个苹果(单价3.5元)?
print(100 // 3.5)
# 应用场景2:去掉整数的低位数保留高位数
num = 28934
print(num // 10)
print(num // 100)
print(num // 1000)
# 练习:写程序获取任意一个正整数的十位数
num = 12562
# 方法1
print(num // 10 % 10)
# 方法2:
print(num % 100 // 10)
4. ** - 幂运算
x ** y - 求x的y次方
print(2 ** 5)
print(5 ** 3)
print(2 ** -2)
print(16 ** 0.5)
print(8 ** (1/3))
二.比较运算符
<(小于)、>(大于)、==(等于)、!=(不等于)、>=(大于等于)、<=(小于等于)
1.所有比较运算符的运算的结果都是布尔值
print(10 > 20)
print(10 < 100)
print(10 == 20)
num = 28
print(num % 2 == 0)
2.python的比较运算符支持连写表示范围
age = 22
print(18 <= age <= 30)
三.逻辑运算符
and(逻辑与运算)、or(逻辑或运算)、not(逻辑非运算)
1.and(逻辑与运算)
1)应用场景:用于连接需要同时成立的两个条件,相当于生活中的’并且‘
2)运算规则:条件1 and 条件2 - 如果两个都是True结果就是True,只要有一个是False结果就是False
True and True - True
True and False - False
False and True - False
False and False - False
# 案例:写程序判断num是否能够同时被3和7整除
num = 21
# num是否能够被3整除: num % 3 == 0
# num是否能够被7整除: num % 7 == 0
print('num是否能同时被3和7整除:', num % 3 == 0 and num % 7 == 0)
2.or(逻辑或运算)
1)应用场景:如果两个条件中只要有一个条件成立就行,就用or连接,相当于生活中的’或者‘
2)运算规则:条件1 or 条件2 - 如果有一个条件是True结果就是True,两个都是False结果才是False
True or True - True
True or False - True
False or True - True
False or False - False
# 练习1:写程序判断num是否能够被3或者7整除
num = 829
print(num % 3 == 0 or num % 7 == 0)
# 练习2:判断num是否是一个大于10的偶数
num = 99
# num大于10:num > 10
# num是否是偶数:num % 2 == 0
print(num > 10 and num % 2 == 0)
# 练习3:判断year对应的年份是否是闰年
year = 1999
# 世纪闰年(能被400整除的年):year % 400 == 0
# 普通闰年:能被4整除但是不能被100整除: year % 4 == 0 and year % 100 != 0
print((year % 400 == 0) or (year % 4 == 0 and year % 100 != 0))
3.not(逻辑非运算)
1)应用场景:对条件进行否定
2)运算规则:not 条件
not True - False
not False - True
# 案例:判断age是否不大于18
age = 19
print(not age > 18)
print(age <= 18)
# 案例:判断year是否不是闰年
print(not ((year % 400 == 0) or (year % 4 == 0 and year % 100 != 0)))
四.赋值运算符
=、+=、-=、*=、/=、%=、//=、**=
1.赋值运算符
所有的赋值运算符的作用:将数据保存到变量中(给变量赋值)
所有的赋值运算表达式都没有结果,无法提供数据
2.=
变量 = 变量 — 直接将数据保存到变量中
3.+=
变量 += 数据 — 现将变量中的数据取出来,和后面的数据进行加法运算,然后将结果重新赋值给变量
注意:复合的赋值运算法前面的变量必须是已经定义过的变量
a = 100
a += 10
print(a) # 110
a -= 20
print(a) # 90
a *= 2
print(a) # 180
a %= 2
print(a) # 0
4.运算符的优先级
1)数学运算符> 比较运算符> 逻辑运算符> 赋值运算符(最低)
2)**> *, /, %, //> +, -
3)and > or
4)有()先算()里面的