(一)数学运算符
+(加)、-(减)、*(乘)、/(除)、//(整除)、**(幂运算)、%(取余)
1.+、-、*、/
# +(加)、-(减)、*(乘)、/(除)
print(2 + 3)
print(2 - 3)
print(2 * 3)
print(2 / 3)
2.整除:向小取整,任何除法运算得到的结果均为整数(int)
# 整除:向小取整,任何除法运算得到的结果均为整数(int)
print(2 // 3)
3.% : 取余
# % - 取余
print(5 % 2)
print(2 % 3)
4.**: 幂运算(涉及到开方结果均为浮点型)
# ** - 幂运算涉及到开方结果均为浮点型
print(2 ** 2)
print(4 ** 0.5)
print(4 ** -0.5)
(二)逻辑运算符
and(逻辑与运算)、or(逻辑或运算)、not(逻辑非运算) --> 结果均为布尔值
1.and
条件1 and 条件2,条件1和条件2都成立时,整体条件成立。反之,条件不成立。
中断: and左边条件不成立时,and右边条件无需再判断。
# and:条件1 and 条件2,条件1和条件2都成立时,整体条件成立。反之,条件不成立。
# 中断:and左边条件不成立时,and右边条件无需再判断。
print(True and True)
print(False and True)
print(False and False)
2.or
条件1 or 条件2,条件1和条件2至少有一个成立,整体成立。都不成立时,整体才不成立。
中断:or左边条件成立时,or右边条件无需再判断。
# or:条件1 or 条件2,条件1和条件2至少有一个成立,整体成立。都不成立时,整体才不成立。
# 中断:or左边条件成立时,or右边条件无需再判断。
print(True or True)
print(False or True)
print(False or False)
3.not
取反,反义词
# not - 取反,反义词
print(not True)
(三) 比较运算符
>、 <、 ==(等等于)、 !=(不等于)、 >=、 <=
1. 注意:
1)Python中比较大小是同类型数据之间比较大小。 2)比较大小得到的结果是布尔值。
# >、 <、 ==(等等于)、 !=(不等于)、 >=、 <=
# Python中比较大小是同类型数据之间比较大小。
# 比较大小得到的结果是布尔值。
print(3 > 4)
2. 问题:为什么Python能够比较大小?
python使用的编码值叫万国码:unicode,其是ASCLL编码的拓展
0-9对应的十进制编码值:48-57
A-Z对应的十进制编码值:65-90
a-z对应的十进制编码值:97-122
# 0-9对应的十进制编码值:48-57
# A-Z对应的十进制编码值:65-90
# a-z对应的十进制编码值:97-122
print('A'<'a')
print(0 != 1)
3.>=、<=
# >=、<=
print(2 >= 2)
(四)赋值运算符
赋值运算符:=、+=、-=、*=、/=、//=、%=、**=
1.简单的赋值运算符
a = 10
a += 5 # a = a + 5
a **= 2 # a = a ** 2
print(a)
a %= 2 # a = a % 2
print(a)
2.复合赋值运算符,先算等号右边再赋值
# 复合赋值运算符 先算等号右边再赋值
a *= a + 3 # a = a * (a + 3)
print(a)
3.运算符优先级
1)先算小括号整体 2)算数运算符:**大于*、/、%、//大于+、- 3)算数运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
(一) 布尔值转换(bool( ))
所有的数据都可以转换为布尔值(bool)
1.0转换为False,非0全是True
2.所有的空值对象全为False
print(bool(0), bool(1), bool(-1))
print(bool(''), bool([]),bool({}),bool(None))
(二)数字转换
1.整型(int())
1)布尔值可以转换成整型:False---0,True---1 2)浮点型转整型:向小取整 3)去掉引号是一个整数的字符串可以转整型
# 1.整型(int())
# int()
# a.布尔值可以转换成整型:False---0,True---1
# b.浮点型转整型:向小取整
# c.去掉引号是一个整数的字符串可以转整型
print(int(bool(100)))
print(int(0.1)) # 0
print(int(.1)) # 0
print(int(1.)) # 1
# print(int('1.0')) invalid literal for int() with base 10: '1.0'
print(int('1'))
2.浮点型(float)
1)整型转浮点型。 2)去掉引号是数字的字符串可以转成浮点型。 3)布尔值可以转浮点型:False---0.0,True---1.0
# 2.浮点型(float)
# float()
# a.整型转浮点型。
# b.去掉引号是数字的字符串可以转成浮点型。
# c.布尔值可以转浮点型:False---0.0,True---1.0
print(float(1))
print(float('.9'))
print(float('9.'))
print(float('9.9'))
# bool()、int()、float()、str()、list()等 构造器语法
year = int(input('请输入一个年份: '))
print(year,type(year))
分支结构关键词:if、else、elif
(一)单分支结构:if、else
单分支结构:if、else 单分支结构语法:
if 条件: 代码段1 else: 代码段2
# 单分支结构:if、else
# 案例:账号密码登录
username = input('请输入用户名:')
password = input('请输入密码:')
if username == 'admin' and password == '123456':
print('登陆成功!')
else:
print('登录失败!')
# 练习:判断一个年份是否为闰年?
year = int(input('请输入一个年份: '))
# print(type(year))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print(f'{year}年为闰年')
else:
print(f'{year}年为平年')
(二·)多分支结构
多分支结构语法: if 条件1: 代码段1 elif 条件2: 代码段2 ...... else: 代码段N
# 多分支结构
# 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}年为平年')
(三)嵌套分支结构
嵌套分支语法: if 条件1: 代码段 if 条件: ... else: 代码段
# 嵌套分支
# 判断一个数字是否是偶数,如果是偶数,再判断其是否是3的倍数。
# 随机模块:random
from random import randint
# randint(a,b) a
(四)分支结构练习
# 练习1:输入三条边长,如果能构成三角形就计算周长和面积。
a = float(input('输入第一条边长: '))
b = float(input('输入第二条边长: '))
c = float(input('输入第三条边长: '))
# 要三个条件,也可以用两边之差小于第三边。
if a + b > c and a + c > b and b + c > a:
# pass: 保持结构完整性,不参与程序执行
# pass
print('这三条边构成一个三角形')
# 周长
C = a + b + c
# 面积:海伦公式---通用公式
# (三角形周长的一半 * (三角形周长的一半 - a)* ...)**0.5
p = (a + b + c) / 2
S = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print(f'三角形的周长为{round(C,2)},面积为{round(S,2)}')
else:
print('这三条边不构成一个三角形')
# 练习2:百分制成绩转换为等级制成绩。
# 要求:如果输入的成绩在90分以上(含90分)输出A;80分-90分(不含90分)输出B;
# 70分-80分(不含80分)输出C;60分-70分(不含70分)输出D;60分以下输出E。
grade = float(input('输入成绩: '))
if grade >= 90:
print('A')
# 不用写后面的条件>90这个条件是多余的
elif grade >= 80:
print('B')
elif grade >= 70:
print('C')
elif grade >= 60:
print('D')
else:
print('E')
# 练习3:英制单位英寸和公制单位厘米互换。
# 注意:厘米=英寸*2.54 用if.
# cun = float(input('输入一个英寸: '))
# cm = cun / 2.54
# print(f'{cun}英寸转换为{round(cm, 2)}厘米')
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')
变量 = '结果1' if 条件 else '结果2' 条件成立,结果为结果1,反之为结果2
# 三目运算符
# 判断一个人是否成年
age = 17
if age < 18:
print('未成年')
else:
print('成年')
# 三目运算符写法:
result = '成年' if age >= 18 else '未成年'
print(result)