python支持的的运算符号:数学运算符、比较运算符、逻辑运算符、赋值运算符、*位运算
1.数学运算符:+ - * / % ** //
1)+(加)、 —(减)、*(乘)、/(除)和数学中的功能一模一样
print(2+5) # 7
print(2*5) # 10
print(2/5) # 0.4
2)%(取余)/(取模) - 求余数
x % Y - 求x除以y的余数
print(10 % 4) # 2
print(15 % 4) # 3
应用1: 判断一个数是否能被另外一个数整除
print(12 % 2)
应用2:取低位数
num = 2345
取num的个位数
print(2345 % 10) # 5
取num的后两位数
print(2345 % 100) # 45
3)// - 整除,求商,商保留整数部分(向小取整)
print(5//2) # 2 (2 2.5 3)
print(3.9//3) # 1
print(-5//2) # 3 (-2 -2.5 -3)
应用场景:取高位(去掉低位)
num = 123
print(num//10) # 12
print(num//100) # 1
4). ** - 幂运算
x ** y - 求X的y次方
print(2 ** 3) # 8
print(16 ** 0.5) # 4.0
print(8 ** (1/3)) # 2.0
2.比较运算符: ==(等于)、!=(不等于)、>(大于)、<(小于)、《<(小于等于)
注意:所有的比较运算符的运算结果都是布尔值
print(10 == 10) # True
print(10 != 10) # False
注意:print(‘123’ > 10 # 不同类的数据不能进行比较大小)
3.逻辑运算符: and(逻辑与运算)、or(逻辑或运算)、not(逻辑非运算)
1.and :
1)应用场景:用于表达多个条件同时满足的时候,相当于生活中的并且
2)运算规则:两个都是True结果才是True,否则结果是False
True and True 结果: True
True and False 结果: False
False and True 结果: False
False and False 结果 :False
2.or:
1)应用场景:用于能表达多个条件主要有一个条件满足就可以的时候,相当于生活中的或者
2)运算规则:两个都是False结果才是False,否则就是True
3.not:
1)应用场景:
如果一个条件正向写的时候情况很复杂,反向写反而很简单的时候就将条件条件反向写前面加not
2)运算规则:
not True 结果:False
not False 结果:True
4.赋值运算符 :
注意:1)赋值运算表达式没有结果(不能用赋值运算来提供数据)
print(a = 10) # 报错
10+ (a = 10) # 报错
2)所有所有赋值运算符的左边必须是变量(不管是简单的赋值运算符还是符合的赋值运算符最终都是为了将数据存储到变量中)
1.= - 普通的赋值运算符
a = 10
print(10 + a)
2.复合赋值运算
变量(变量必须是已经赋值过的变量) += 数据 - 先将变量中的数据取出来和后面的数据进行加法运算,最后将运算的结果重新赋给前面的变量
x = 100
x += 10 #x = x + 10
print(x) #110
x -= 20
print(x) # 90
x = 260
x %= 5
print(x) # 0
x = 4
x **= 4
print(x)
y = 4
y //= 1
print(y)
3.运算符的优先级
数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低)
** > *、/、%、//、 > +-
有括号先算括号里面(只有小括号)
5.if分支:
语法:
if 条件语句:
代码段
说明:
1)if - 关键字;固定写法
2)条件语句 - 任何有结果的表达式(赋值语句不可以):具体的数据、已经赋值过的变量、运算表达式
3): - 固定写法,不能省略
4)代码段 - 和if保持一个缩进(一般用tab键产生)的一条或者多条语句
满足条件才执行的代码
执行过程:如果条件语句为True,就执行代码段,否则代码段不执行
age = 19
if age >= 18:
print(‘成年’)
方法1
num = 23
if num % 2 != 0:
print(‘奇数’)
if num % 2 == 0:
print(‘偶数’)
方法2
if num % 2:
print(‘奇数’)
2.双分支结构 - if…else…
‘’’
语法:
if 条件语句:
代码段1(条件成立的时候会执行的代码)
else:
代码段2(条件不成立的时候会执行的代码)
‘’’
age = 8
if age < 18:
print(‘未成年’)
else:
print(‘成年’)
作业
选择题
-
print(100 - 25 * 3 % 4)
应该输出什么? (B)A. 1
B. 97
C. 25
D. 0
-
下列哪种说法是错误的(A)。
A. 除字典类型外,所有标准对象均可以⽤于布尔测试
B. 空字符串的布尔值是False
C. 空列表对象的布尔值是False
D. 值为0的任何数字对象的布尔值是False
-
下列表达式的值为True的是(C)。
A. 3>2>2
B. 1 and 2 != 1
C. not(11 and 0 != 2)
D. 10 < 20 and 10 < 5
-
Python不⽀持的数据类型有(A)。
A. char
B. int
C. float
D. list
-
(多选)n = 6784,以下能够获取到7 的⽅法有(C .D)。
A. n / 1000 % 100
B. n % 1000 / 100
C. n // 100 % 10
D. n // 10 % 100 // 10
-
运⾏以下程序,当从键盘上输⼊12,运⾏结果是(C)。
x = (input()) print(type(x))
A. <class 'str'>
B. <class 'int'>
C. 出错
D. <class 'dict'>
-
下列表达式的运算结果是(D ) 。
a = 100 b = False print(a * b > -1)
A. False
B. 1
C. 0
D. True
填空题
- 查看变量中数据的类型的函数名是(Type())。
- 已知 x = 3 == 3 ,执⾏结束后,变量x的值为(3)。
- 已知 x = 3 ,那么执⾏语句 x += 6 之后,x的值为(9)。
- 表达式 3 ** 2 的值为(9),表达式 3 * 2 的值为(6),表达式 4 ** 0.5 的值为(2)。
编程题
- 写出判断⼀个数是否能同时被2和5整除的条件语句, 并且打印对应的结果。
num % 2 ==0
num % 5 ==0
print('数字能否同时被2和5整除':, num % 2 == 0 and num % 5 == 0)
2.写出判断⼀个数是否能够被2或者5整除,但是不能同时被2或者5整除的条件语句, 并且打印对应
的结果。
num = 22
print('数字是否能被2或者5整除,但是不能同时被2或者5整除:', (num % 2 == 0 or num % 5 == 0) and not (num % 2== 0 and num % 5 == 0 ))
# Ture
3.假设今天的上课时间为15678秒,编程计算今天上课时间是多少⼩时,多少分钟,多少秒;以‘XX
时XX分XX秒’的⽅式表示出来。
例如:100秒表示成 0时1分40秒
t = 15678
a = t // 3600
b = (t - 3600 * a) // 60
c = (t - 3600 * a - b * 60)
print(a,'小时', b, '分种', c, '秒')
#4小时21分钟18秒
4.定义两个变量保存⼀个⼈的身⾼和体重,编程实现判断这个⼈的身材是否正常!
公式: 体重(kg) / (身⾼(m)的平⽅值 ) 在18.5 ~ 24.9之间属于正常。
输出格式: 是否正常:True/False
m = 1.78
kg = 70
if (18.5 <= (kg / m ** 2) <= 24.9):
print('True')
else:
print('False')
# True