一、基本运算符
1、赋值运算
age = 18
(1)增量赋值
age = 18
age +=1 # age = age + 1
print(age)
age -= 10 # age = age -10
age *=10 # age = age * 10
age /=10 # age = age /10
age //=10 # age = age //10
age %=10 # age =age %10
(2)交叉赋值
x = 111
y = 222
x,y = y,x
#temp = x
#x = y
#y = temp
(3)链式赋值
x=10
y=x
z=y
x=y=z=10
print(id(x),id(y),id(z))
(4)解压赋值
salaries = [111, 222, 333, 444, 555]
mon0 = salaries[0]
mon1 = salaries[1]
mon2 = salaries[2]
mon3 = salaries[3]
mon4 = salaries[4]
mon0,mon1,mon2,mon3,mon4=salaries
print(mon0)
print(mon1)
print(mon2)
print(mon3)
print(mon4)
注意1: 变量名与值的个数必须一一对应
mon0,mon1,mon2,mon3,mon4,mon5=salaries # 多一个变量名不行
mon0,mon1,mon2,mon3=salaries # 少一个变量名不行
星号把不用的值打包到下划线变量名里,下划线的内容丢弃不用。
解压前两个值:
salaries = [111, 222, 333, 444, 555]
mon0,mon1,*_=salaries
print(mon0)
print(mon1)
print(_) #运行的是丢弃的值
解压后两个值:
# *_, mon3, mon4 = salaries
# print(salaries)
解压前后值:
# mon0,*_ mon3, mon4 = salaries
# print(salaries)
解压中间值:
_,*midlle,_=salaries
print(midlle)
字典解压为key
dic={'k1':111,'k2':222,'k3':3333}
x,y,z=dic
print(x,y,z)
print(dic[x],dic[y],dic[z])
字符串解压需对应字符长度
x, y, z,a,b = "hello"
print(x)
一 条件:只要能得到True 或 False两种值的东西都能当做条件
例如:
1、显式的布尔值 : 表面上看就直接是True或False
(1)比较运算的结果
print(10 > 3)
print(10 == 3)
(2)变量值直接就是True或False
tag = True
2、隐式的布尔值 :表面上看上去是一种值,在底层会被解释器转换成True或False
0、None、空对应的布尔值为False,其余值对应的布尔值均为True
10
3.1
“”
[]
{“k1”:222}
None
二:逻辑运算符:用来连接多个条件
(1) not 条件:对条件的结果取反
print(not 10 > 3)
print(not False)
print(not 0)
(2) 条件1 and 条件2:连接左右两个条件,两个条件必须都为True,最终结果才为True
print(True and 10 > 3)
print(True and 10 == 3)
(3) 条件1 or 条件2:连接左右两个条件,两个条件只要有一个为True,最终结果就为True
print(False or 10 == 3)
print(True or 10 == 3)
ps:偷懒原则=》短路运算
(4) 优先级:not > and > or,推荐用括号去标识优先级
False or True
res=(3 > 4 and 4 > 3) or (not (1 == 3 and ‘x’ == ‘x’)) or 3 > 3
print(res)
res = 3 > 4 and 4 > 3 or not 1 == 3 and ‘x’ == ‘x’ or 3 > 3
print(res)
res = (3 > 4 and 4 > 3) or (not 1 == 3 and ‘x’ == ‘x’) or 3 > 3
res = 3 > 4 and 4 > 3 or not 1 == 3 and ‘x’ != ‘x’ or 3 > 3
print(res)
print(10 and 0)
10 = True
0 = Flase
print(10 and False)
print(10 or False)
三、流量控制if判断
“”"
if判断的完整语法:
if 条件1:
代码1
代码2
代码3
…
elif 条件2:
代码1
代码2
代码3
…
elif 条件3:
代码1
代码2
代码3
…
…
else:
代码1
代码2
代码3
…
运行原理示范:
print(1111)
print(2222)
if True:
print(‘if内的代码1’)
print(‘if内的代码2’)
print(‘if内的代码3’)
print(3333)
“”"
语法1:if
if 条件1:
代码1
代码2
代码3
…
“”"
# gender = "female"
# age = 18
# is_beautiful = True
#
# if gender == "female" and 60 >= age >= 18 and is_beautiful:
# print('开始表白。。。')
#
# print('后续代码。。。')
语法2:if+else
“”"
if 条件1:
代码1
代码2
代码3
…
else:
代码1
代码2
代码3
…
“”"
# gender = "female"
# age = 70
# is_beautiful = True
#
# if gender == "female" and 60 >= age >= 18 and is_beautiful:
# print('开始表白。。。')
# else:
# print('阿姨好,开个玩笑。。。')
#
# print('后续代码。。。')
语法3:if+elif+else
“”"
if 条件1:
代码1
代码2
代码3
…
elif:
代码1
代码2
代码3
…
“”"
# 如果:成绩 >= 90 那么:优秀
#
# 如果成绩 >= 80 且 < 90, 那么:良好
#
# 如果成绩 >= 70 且 < 80, 那么:普通
#
# 其他情况:很差
# score = input("请输入你的成绩:") # score = "93"
# score=int(score) 字符串转数字
# if score >= 90:
# print("优秀")
# elif score >= 80:
# print("良好")
# elif score >= 70:
# print("普通")
# else:
# print("小垃圾,很差")
#
# print('其他代码。。。。')
语法4:if(if+else)+elif(elif+else)+else
if的嵌套
"""
gender = "female"
age = 18
is_beautiful = True
is_successful = True
if gender == "female" and 60 >= age >= 18 and is_beautiful:
print('开始表白。。。')
if is_beautiful:
print('在一起')
else:
print('再见。。。')
else:
print('阿姨好,开个玩笑。。。')
print('后续代码。。。')