python运算符
链接的多个条件必须都满足结果才成立否则不成立
eg:相亲对象身高165以上并且体重110以下并且长得漂亮并且家里有钱
链接的多个条件有一个满足即可
eg:相亲对象身高165以上或者体重110以下或者长得漂亮或者家里有
对条件取反
eg:说反话
你这样的举动真他妈的让我高兴啊>>>很不高兴
print(1 > 2 and 4 > 1) # False
and链接多个条件 只要有一个是False就不用往后看了 结果肯定是False
print(False and 1 < 4 and 5 > 1 and 9 > 6 and 8 > 3 and 7 > 9)
print(1 > 2 or 4 > 1) # True
or链接多个条件 只要有一个是True就不用往后看了 结果肯定是True
print(False or 1 < 4 or 5 > 1 or 9 > 6 or 8 > 3 or 7 > 9)
print(not True) # False
"""
上述三个关键字如果混合使用是存在优先级的 但是我们不需要考虑优先级
在书写的时候应该通过括号强制规定优先级关系
eg:先乘除后加减 打破顺序可以使用括号
"""
判断某个个体(局部)在不在某个群体(整体)内 in
stu_list = ['jason', 'tom', 'kevin', 'tony'] guess_name = input('name>>>:') print(guess_name in stu_list) print(guess_name not in stu_list)
"""
如何查看变量值所在的"内存地址"
id() 返回一串数字 可以用来表示内存地址
"""
>>> name1 = 'jason kevin tony' >>> name2 = 'jason kevin tony' >>> id(name1) 1358885155152 >>> id(name2) 1358885155224 >>> x = y = z = 'jason kevin tony' >>> id(x) 1358885155296 >>> id(y) 1358885155296 >>> id(z) 1358885155296 >>> name1 == name2 # 判断两个变量的值是否相等 True >>> name1 is name2 # 判断两个变量绑定值的内存地址是否相等 False
两个变量的值相等 那么内存地址不一定相等
两个变量的内存地址相等 那么值肯定相等
流程控制就是控制执行的流程
流程主要分为三种
1.顺序结构(忽略)
从上往下依次执行(截止目前为止我们所写的代码都是顺序结构)
作业:写博客使用Typora画出来
2.分支结构(重点)
根据条件的不同执行不同的流程
作业:写博客使用Typora画出来
3.循环结构(重点)
根据条件循环往复的执行某一个过程
"""
在python中通过代码的缩进来表示代码的从属关系
如果上面的代码没有缩进下面的代码缩进了
那么表示下面的代码属于上面的代码 下面代码是否就要取决于上面的代码
在python中并不是所有的代码都可以拥有子代码
可以拥有子代码的
if
属于同一个关键字的多行子代码必须要保持相同的缩进量
ps:python中缩进一般推荐使用四个空格(tab键)
小技巧:当某一行代码的结尾出现了冒号 那么下一行代码必缩进
"""
# 如果年龄大于28岁 叫阿姨 age = 20 if age > 28: print('阿姨好')
""" 语法结构 if 条件: 条件成立之后执行的子代码 """ '''小练习''' username = input('username>>>:') if username == 'jason': print('欢迎jason') # 如果年龄大于28岁 叫阿姨 否则叫小姐姐 age = 38 if age > 28: print('阿姨好') else: print('小姐姐好')
""" if 条件: 条件成立执行的子代码 else: 条件不成立执行的子代码 """ # 如果:成绩>=90,那么:优秀 # 如果成绩>=80且<90,那么:良好 # 如果成绩>=70且<80,那么:普通 # 如果成绩>=60且<70,那么: 及格 # 如果成绩<60 那么: 挂科 score = 50 if score >= 90: print('优秀') elif score >= 80: print('良好') elif score >= 70: print('普通') elif score >= 60: print('及格') else: print('挂科') """ 语法结构 if 条件1: 条件1成立执行的代码 elif 条件2: 条件1不成立条件2成立执行的代码 elif 条件3: 条件1和2都不成立条件3成立执行的代码 else: 上述条件都不成立执行的代码 中间的elif可以有多个 if 和 else只能有一个(前提:在同一个分支结构中) if elif else连用 肯定只会走一个 其他的肯定不走 """ # if嵌套 # 如果年龄大于28岁 叫阿姨 否则跟小姐姐要微信 # 要么成功要么失败 is_success = True age = 18 if age < 28: print('小姐姐 加个微信呗') if is_success: print('吃饭 看电影 天黑了~~~') else: print('去你妹的 臭流氓!') else: print('不好意思看错人了!')
# while True: # username = input('username>>>:') # password = input('password>>>:') # print(username, password) """ 语法结构 while 条件: 条件成立之后执行的循环体代码 1.先判断条件是否成立 如果成立 2.执行while循环体代码 代码执行完毕之后继续判断条件是否成立 3.如果还成立则继续执行while循环体代码 代码执行完毕之后继续判断条件是否成立 4.重复执行步骤2和3直到条件不成立为止 """
# 利用while循环打印1-10 count = 1 while count < 11: print(count) count += 1 # 利用while循环打印1-10 但是排除7 count = 1 while count < 11: # 判断count是否等于7 如果等于则不打印 if count == 7: # 结束本次循环 开始下一次循环 count += 1 continue # 直接跳到循环体的条件判断处重新判断条件 print(count) count += 1 # 利用while循环打印1-10 但是到7之后直接结束循环 count = 1 while count < 11: # 判断count是否等于7 如果等于则结束循环 if count == 7: # 结束本层循环 break print(count) count += 1 """ break和continue只能影响所在层的while """ count = 1 while count < 11: # 判断count是否等于7 如果等于则结束循环 if count == 7: while True: cmd = input('cmd>>>:') print(cmd) if cmd == 'q': break print(count) count += 1
1.利用if判断实现用户的登录功能
获取用户的用户名和密码 然后判断是否跟后台设定的用户名密码相同
eg:jason 123
username = input('用户名>>>:')
password = input('密码>>>:')
if username == 'jason' and password == '123':
print('登陆成功')
else:
print('登陆失败')
2.利用if判断编写身份识别系统
获取用户的用户名 根据用户名的不同打印不同的身份
eg:
jason 管理员
tony 经理
kevin 主管
tom、jerry 专员
其他人员 普通员工
username = input('用户名>>>:')
if username == 'jason':
print('管理员')
elif username == 'tony':
print('经理')
elif username == 'kevin':
print('主管')
elif username == 'tom' or username == 'jerry':
print('专员')
else:
print('普通员工')
拔高:循环起来并添加自动结束命令
while True:
username = input('用户名>>>:')
if username == 'jason':
print('管理员')
elif username == 'tony':
print('经理')
elif username == 'kevin':
print('主管')
elif username == 'tom' or username == 'jerry':
print('专员')
else:
print('普通员工')
if username == 'end':
break
3.利用while循环编写猜年龄的游戏
只有猜对了才结束程序 否则一直循环猜
while True:
end = 30
age = input('年龄>>>:')
age = int(age)
if age > end:
print('大了')
elif age < end:
print('小了')
else:
print('正确')
break
拔高:
三次机会
times = 0
while times < 3:
end = 30
age = input('年龄>>>:')
age = int(age)
if age > end:
print('大了')
times += 1
elif age < end:
print('小了')
times += 1
else:
print('正确')
break
age = input('age>>>:')
age = int(age) # 将字符串数字转成整型数字
if age > 80:
print('哈哈')