比较运算符的类型:
| 序号 | 类型 | 描述 |
| :–: | :–: | :------: |
| 1 | > | 大于 |
| 2 | < | 小于 |
| 3 | == | 等等于 |
| 4 | != | 不等于 |
| 5 | >= | 大于等于 |
| 6 | <= | 小于等于 |
1.1 python中比较大小是同类型数据之间比较大小
1.2 比较大小得到的结果是布尔值(bool)
注意:=于==区别
= == 赋值,不用于比较 等于,用于比较
print(3>4) False >a=2(等于号相当于变量赋值) print(a) 2
1.3 为什么Python 能够比较大小?
a. Python使用的编码值叫万国码:Unicode,其是ASCII编码的拓展
b. 数字0-9对应的十进制编码值:48-57,A-Z对应的十进制编码:65-90;a-z对应的编码值:97-122
c. print(‘A’ < ‘a’),因为A的十进制编码为65,a的十进制编码值为97,故A
# !=举例 print(0!=1) True # ==举例 print(0==1) False # >=、<=举例 print(2 >= 2) True
1.4 判断年份是否是闰年?
year = 2004 result = (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) print(result)2.赋值运算符&复合赋值运算符
2.1 赋值运算符
计算规则:先算等号右边,再给等号左边赋值
赋值运算符类型:
= 赋值 += 加 -= 减 *= 乘 /= 除 //= 整除 %= 取余 **= 幂运算
a = 10(a赋值为10) a += 5(将等号左边挪到右边为a+5,再将代入后计算的结果重新赋给a) a = a + 5(故+=后更新计算式为a=a+5) prin(a) (结果为15) a=2 a **= 3(相当于a = a ** 3,求a) print(a) (结果为8) a=2 a %= 2(相当于a = a % 2,求a) print(a) (结果为0)
2.2 复合赋值运算符
a=2 a*= a + 3(相当于a = a* (a + 3),求a) print(a) (结果为10)
2.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}')
- 练习2:根据指定的圆的半径,计算圆的周长和面积
r = 3
pi = 3.14
C = 2 * pi * r
S = pi * r * * 2
print(f'半径为{r}的圆的周长为{C},面积为{S}')
3.简单数据类型转换(布尔值、数字)
3.1 布尔值转换
所有数据都可以转换为布尔值(bool),bool( )
print(bool(0),bool(1),bool(-1))
False True True
print(bool(''),bool([]),bool({}),bool(None))
False False False
- a.0转换bool值为False,非0全是True
- b.所有的空值对象全是False
3.2 数字转换
-
- 整型(int)
int( )
- a.布尔值可以转换成整型:False→0,True→1
- b.浮点型可以转换成整型:向小取整
- c.去掉引号是一个整数的字符串可以转整型,有小数位的字符串会报错
print(int(bool(100))) →1
print(int(0.1)) →0
print(int(.1)) →0
print(int(1.)) →1
print(int('1.0')) →ValueError,invalid literal for int() with base 10: '1.0'
print(int('1')) →1
-
- 浮点型(float)
float( )
- a.整型转浮点型
- b.去掉引号是数字的字符串可以转成浮点型
- c.布尔值可以转浮点型→False:0.0, True:1.0
print(float(1)) →1.0
print(float('.9')) →0.9
print(float('9.')) →9.0
print(float('9.9')) →9.9
-
- 其他:bool()、int()、floa()、str()、lis()等,构造器语法
year=int(input('请输入一个年份'))
print(year,type(year))
2004,int
4.分支结构
分支结构关键词:if、else、elif
from keyword import kwlist print(kwlist)
4.1. 单分支结构:if、else
案例:账号密码登录
username=input('请输入用户名:')
password=input('请输入密码:')
if username=='admin' and password=='12345'
print('登陆成功')
else:
print('登录失败')
- 单分支结构语法
if条件:(下一行有缩进,此处代码必须有冒号:)
(此处缩进四个空格)代码段1
else:
(此处缩进四个空格)代码段2
缩进:一般把缩进看做四个空格,一个程序的缩进必须保持一致。
练习:判断一个年份是否是闰年?
year = int(input('请输入一个年份:'))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print(f'{year}是闰年')
else:
print(f'{year}是平年')
4.2. 多分支结构
if year % 4 == 0 and year % 100 != 0:
print(f'{year}是闰年')
elif year % 400 == 0:
print(f'{year}是闰年')
else:
print(f'{year}是平年')
- 多分支结构语法
if 条件1:(下一行有缩进,此处代码必须有冒号:)
(此处缩进四个空格)代码段1
elif 条件2(注意冒号结尾):
(此处缩进四个空格)代码段2
…(此处可有条件n,同样以冒号结尾)
else:
(此处缩进四个空格) 代码段n```
if year % 4 == 0 and year % 100 != 0:
print(f'{year}是闰年')
elif year % 400 == 0:
print(f'{year}是闰年')
else:
print(f'{year}是平年')
4.3 嵌套分支结构
案例:判断一个数字是否是偶数,如果是偶数,在判断其是否是3的倍数。
- 随机模块:random
from random import randint randint(a,b) - a
- 嵌套分支语法
if 条件1:(下一行有缩进,此处代码必须有冒号:)
(此处缩进四个空格)代码段1
(此处缩进四个空格,同时条件后有冒号:)if 条件:
(此处缩进四个空格)代码段else:
(此处缩进四个空格) 代码段n```4.3 三目运算符写法
案例:判断一个人是否成年?
- a.单分支结构写法:
age = 17
if age < 18:
print('未成年')
else:
print('成年')
- b.三目运算符写法:
result='成年'if age >=18 else '未成年' print(result)
- 三目运算符语法
变量 = ‘结果1’ if 条件 else ‘结果2’
条件成立,结果为结果1,反之为结果2
练习题1:输入三条边长,如果能构成三角形就计算周长和面积。
a = float(input('请输入边长'))
b = float(input('请输入边长'))
c = float(input('请输入边长'))
if a + b > c and a + c > b and b + c > a:
# pass
# 周长为C
C = a + b + c
# 面积为S
S = (C / 2 * (C / 2 - a) * (C / 2 - b) * (C / 2 - c)) / 2
print(f'边长分别为{a}、{b}、{c}的三角形周长为{C},面积为{round(S, 2)}')
练习题2:百分制成绩转换为等级制成绩。
要求:如果输入的成绩在90分以上(含90分)输出A;80分-90分(不含90分)输出B;70分-80分(不含80分)输出C;60分-70分(不含70分)输出D;60分以下输出E。
num = 90
if num >= 90:
print('A')
elif num >= 80:
print('B')
elif num >= 70:
print('C')
elif num >= 60:
print('D')
else:
print('E')
练习题3:英制单位英寸和公制单位厘米互换。
注意:厘米=英寸*2.54
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')



