- 1. 运算符
- 1.1 比较运算符
- 1.2 赋值运算符
- 1.3 运算符优先级
- 1.4 练习
- 2. 数据类型的转换
- 2.1 布尔值转换
- 2.2 数字转换
- 2.2.1 整型(int)
- 2.2.2 浮点型(float)
- 3. 分支结构
- 3.1 单分支结构
- 3.2 多分支结构
- 3.3 嵌套分支结构
- 3.4 三目运算符
- 4. 练习
Python中的比较运算符有:>(大于)、<(小于)、==(等于)、!=(不等于)、>=(大于等于)、<=(小于等于)
PS:=是赋值符号,不可用于比较运算
- Python中比较大小是同类型数据之间比较
- 比较大小的结果是布尔值(True、False)
print(3>4)
print('A' < 'a')
运行结果
False True
问题:为什么Python能够比较大小?
答:Python使用的编码叫万国码:unicode,是ASCII编码的拓展。
ASCII编码对照表
- 数字0-9对应的十进制编码值:48-57
- A-Z对应的十进制编码:65-90
- a-z对应的编码值:97-122
year = 2004 result = (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) print(result)
运行结果
True1.2 赋值运算符
先算等号右边,再给等号左边赋值
Python中的赋值运算符有:=、+=、-=、*=、/=、//=、%=、**=
a = 10 a += 5 print(a) # a = a + 5 a **= 2 # a = a ** 2 print(a) a %= 2 # a = a % 2 print(a) # 复合赋值运算符 a *= a + 3 # a = a * (a + 3) print(a)
运行结果
15 225 1 41.3 运算符优先级
- a.先算小括号整体。
- b.算数运算符:**大于*、/、%、//大于+、-
- c.算数元素符 > 比较运算符 > 逻辑运算符 > 赋值运算符
- 练习1:华氏度和摄氏度的转换:C = (F - 32)/1.8
F = 87
C = round((F - 32) / 1.8, 1)
# round(参数1, 参数2) --> 参数1等于数值,参数2需要保留的小数位数。
print(f'华氏度{F}等于摄氏度{C}')
运行结果
华氏度87等于摄氏度30.6
- 练习2:根据指定的圆的半径,计算圆的周长和面积。
r = 3
pi = 3.14
C = 2 * pi * r
S = pi * r ** 2
print(f'半径为{r}的圆的周长为{C},面积为{S}')
运行结果
半径为3的圆的周长为18.84,面积为28.262. 数据类型的转换 2.1 布尔值转换
所有的数据都可以转换为布尔值(bool)
print(bool(0), bool(1), bool(-1))
print(bool(''), bool([]), bool({}), bool(None))
运行结果
False True True False False False False
- 0转换为False,非0全转换为True
- 所有的空值对象全是False。
- 布尔值可以转换成整型:False --> 0,True --> 1
- 浮点型转整型:向小取整
- 去掉引号是一个整数的字符串可以转整型
print(int(bool(100)))
print(int(0.1), int(.1)) # --> 0
print(int(1.), int('1')) # --> 1
# print(int('1.0')) #--> invalid literal for int() with base 10: '1.0'
运行结果
1 0 0 1 12.2.2 浮点型(float)
- 整型转浮点型。
- 去掉引号是数字的字符串可以转成浮点型。
- 布尔值可以转浮点型—>False:0.0; True:1.0
print(float(1), float('.9'), float('9.'), float('9.9'))
运行结果
1.0 0.9 9.0 9.9
- PS:bool()、int()、float()、str()、list()等 —> 构造器语法
关键词:if、else
缩进:一般把缩进看做四个空格,一个程序的缩进必须保持一致。
- 案例1:账号密码登录
username = input('请输入用户名:')
password = input('请输入密码:')
if username == 'admin' and password == '123456':
print('登录成功')
else:
print('登录失败')
- 案例2:判断一个年份是否是闰年?
year = int(input('请输入一个年份:'))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print(f'{year}是闰年')
else:
print(f'{year}是平年')
3.2 多分支结构
关键词:if、elif、else
- 案例:判断一个年份是否是闰年?
if year % 4 == 0 and year % 100 != 0:
print(f'{year}是闰年')
elif year % 400 == 0:
print(f'{year}是闰年')
else:
print(f'{year}是平年')
3.3 嵌套分支结构
- 案例:判断一个数字是否是偶数,如果是偶数,在判断其是否是3的倍数。
# 随机模块:random from random import randint # randint(a,b) - a 3.4 三目运算符# 判断一个人是否成年 age = 17 if age < 18: print('未成年') else: print('成年') # 三目运算符写法 # 变量 = '结果1' if 条件 else '结果2' # 条件成立,结果为'结果1',反之为'结果2' result = '成年' if age >= 18 else '未成年' print(result)4. 练习
- 练习1:输入三条边长,如果能构成三角形就计算周长和面积。
a = float(input('输入三角形边长:')) b = float(input('输入三角形边长:')) c = float(input('输入三角形边长:')) if a + b > c and a + c > b and b + c > a: # 周长 C = a + b + c # 面积:海伦公式 --> # (三角形周长的一半 * (三角形周长的一半 - a) * (三角形周长的一半 - b).....)**0.5 S = (C / 2 * (C / 2 - a) * (C / 2 - b) * (C / 2 - c)) ** 0.5 print(f'边长为{a},{b},{c}三角形的周长为{C},面积为{round(S, 2)}') else: print('三条边不能构成三角形')运行结果
边长为3.0,4.0,5.0三角形的周长为12.0,面积为6.0
- 练习2:百分制成绩转换为等级制成绩。
要求:如果输入的成绩在90分以上(含90分)输出A;80分-90分(不含90分)输出B;
70分-80分(不含80分)输出C;60分-70分(不含70分)输出D;60分以下输出E。
score = 90
if score >= 90:
print('A')
elif score >= 80:
print('B')
elif score >= 70:
print('C')
elif score >= 60:
print('D')
else:
print('E')
运行结果
A
- 练习3:英制单位英寸和公制单位厘米互换。
num = float(input('请输入一个数值:'))
unit = input('请输入单位:')
if unit == 'cm' or unit == '厘米':
print(f'{num}{unit}={num * 2.54}in')
else:
print(f'{num}{unit}={num / 2.54}cm')
运行结果
12.0m=4.724409448818897cm



