一、运算符
1.赋值运算符:
赋值运算符.png
2.交叉赋值:
即是对两个变量的值的互换
x = 1
y = 2
x,y = y,x # 此时y = 2,x = 1
3.解压赋值:
对列表,字典,字符串其中的元素存放到新变量中
列表:
list = [11,22,33,44,55,66]
n1,n2,n3,n4,n5,n6 = list
print(n1,n2,n3,n4,n5,n6)
当我们只想要一个列表的前几个或者后几个元素的时候,我们可以使用*来取得其他的元素,然后用这个变量把不要的垃圾都存进去,所以在之后的开发中,不要获取中的元素。
list = [11,22,33,44,55,66]
x,y,*_ = list # 若打印_可看到[33,44,55,66]
print(x,y) # 获取前两个元素
*_,x,y = list
print(x,y) # 获取后两个元素
x,*_,y = list
print(x,y) # 获取前后两个元素
字典:
字典的方法与列表相同,不过字典获取到的是key值,我们需要在利用字典的key:value对应,多做一步操作,取得字典中的value。
dic = {
'k1': 'name1',
'k2': 'name2',
'k3': 'name3',
'k4': 'name4',
'k5': 'name5',
}
n1,n2,n3,n4,n5 = dic
print(n1,n2,n3,n4,n5) # 拿到'k1','k2','k3','k4','k5'
print(dic[n1])
若只想拿到前后的几个值,方法与列表一样。
dic = {
'k1': 'name1',
'k2': 'name2',
'k3': 'name3',
'k4': 'name4',
'k5': 'name5',
}
x,y,*_ = dic
print(x,y,_)
*_,x,y = dic
print(x,y,_)
x,*_,y = dic
print(x,y,_)
二、逻辑运算符
条件:只要能得到True或者False的表达式都能当条件。
1.显式布尔值:能直接看出True或者False的变量或者表达式
①比较运算符
print(10>3) # 很明显10>3是True
②变量值为布尔类型
tag = True
2.隐式布尔值:所有对象都有隐式布尔值,即在表面上看可能是一个变量,一串字符串,但在底层都会被解释器转换为True或者False
注意:在python中,0,None,空(空字符串,空列表,空字典)布尔值为False,其余都为True
3.not:取反,即对后面的值取反
not 10 # False
not 10>3 # False
not 0 # True
4.and:且
条件1 and 条件2 当条件1为True且条件2为True,and运算连接才为True
1<2 and 10>3 # False
'x' == 'x' and 2>1 # True
5.or:或
条件1 or 条件2 当条件1或者条件2为True,or运算连接就为True
1<2 or 10>3 # True
10>20 or 'x' ==5 # False
6.not,and,or的优先级以及常见面试题
优先级:not > and > or
短路运算:当and或者or判断时,当左边的条件已经可以决定整个式子的结果时,就不再进行后续的运算。
常见题分析步骤:
not,and,or面试题分析步骤.jpg
三、流程控制之if判断
语法结构:
if 条件1:
代码1
代码2
elif 条件2:
代码3
else:
代码4
在日常使用中,我们使用if判断,if+条件:是必不可少的
①if独用
age = 18
gender = 'mile'
if age ==18 and gender = 'mile':
print('一个年轻的男孩子')
②if+else
name = input("请输入您的用户名:")
pwd = input('请输入您的密码:')
if name == 'yang' and pwd == '123' :
print("登录成功")
else:
print("登录失败")
③if+elif+eise
score = int(input("请输入您的成绩:"))
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 70:
print("C")
else:
print("Study hard boy,D")