python学习Day08
Day 08
今日内容概要
- 逻辑运算符知识补充
- 循环结构—while循环
- 死循环与全局标志位
今日内容详细
1.逻辑运算符知识补充
#连接的条件如果不是具体的值,则会自动转换成布尔值(False/True)
#写代码时,布尔值或者数字并不影响代码的正常运行
eg:
if True:
print('123')
if 1:
print('456')
#结果是'123'和'456'都打印出来
1)and
print(1==2 and 3)
如果and前判断的结果是False,后面就不用看了#结果是False
print(1==1 and 3)
如果and前判断后返回的结果是True,后面是明确的数据值,则结果就返回该数据值#结果是3
print(1==1 and 3==1)
如果and前判断后返回的结果是True,后面也是判断后的值,则返回布尔值(True/False)#结果是False
2)or
与and同理
print(1==1 or 1)#True
print(1 or 1==1)#1
print(1>2 or 1)#1
print(1>2 or 1==1)#True
print(1>2 or 1>4)#False
#and两边只要只要有一个不成立,结果就不成立
#or两边只要有一个成立,结果就成立
3)not
print(not 1)#False
print(not 1==1)#False
print(not 1>5)#True
#not返回的结果肯定是布尔值
2.循环结构—while循环
循环结构有:
while循环
for循环
while
1)while循环语法结构
while 条件:
条件成立后执行的子代码(需要循环的代码)
1.先判断while后的条件是否成立,成立则执行下面的子代码
2.子代码运行完会再回到while后的条件判断出,判断是否成立
3.如果判断条件成立将一直循环
4.当while后的判断条件不成立时,结束循环
结束循环的两种方式:
1.固定次数结束循环:(计数器)
自己写结束条件,利用while后面的条件判断来结束循环
eg:
count = 1 #定义一个计数器
while count < 4
print(123)
count += 1 #让计数器自己每次加1
#结果就是执行了3次
print(count)#结果为4 因为count +=1是计算后才去往上循环
2. 在循环体内部添加'关键词'强制结束:
一.while+break
#结束本层循环
1)单while循环
while True:
name = input('name:')
if name =='张三':
print('名字正确')
break # 添加强制结束关键词,结束本层循环
else:
print('名字错误')
#循环打印1~10,到7结束
count = 1 #定义一个计数器
while count < 11:#定义当计数器小于11时执行循环
if count == 7:#添加一个条件如果计数器=7
break #结束循环
print(count) #打印计数器的数值
count += 1 #计数器每次+1
2)循环套循环
while True:
print('外循环')
while True:
print('内循环')
break #结束内循环
break #结束外循环
*如果在没添加判断条件时只结束内循环不结束外循环,结果就是从内循环结束后执行外循环,再从外循环运行到内循环,内循环结束后继续执行外循环一直重复
二.while+continue
#结束本次循环,回到循环的条件判断处重新开始循环
eg: 循环打印1到10,到7跳过
count = 1
while count < 11:
if count == 7: # 如果count等于7执行下面操作
count += 1 # 让count自增1(不然会陷入死循环: count=7 回到判断处 count=7..)
continue # 跳过本次循环 直接开始下一次循环
print(count)
count += 1
eg:
while True:
print(123)
while True:
print(321)
continue #结束本次循环跳到上一个条件继续执行
continue # 永远不会到这一步,因为上一个continue在一直循环
三.while+else
当循环体用关键词强制结束就不会执行else后的代码。
eg:
count = 1
while count < 11:
print(count)
if count == 7:
break
count += 1
else:
print('循环体按照提前定义好的条件正常结束 则会执行')
3.死循环与全局标志位
1.死循环
count = 10
while True:
count *= 10 # 计算死循环 不允许出现 有问题
while True:
name = input('name>>>:') # 有等待时间 允许出现 没有问题
2.全局标志位(可以不用)
flag = True
while flag:
print(123)
while flag:
print(321)
while flag:
print(222)
flag = False
作业:
1.准确说出下列判断的结果(不要执行代码)
v1 = 1 or 3
v2 = 1 and 3
v3 = 0 and 2 and 1
v4 = 0 and 2 or 1
v5 = 0 and 2 or 1 or 4
v6 = 0 or False and 1
2.编写一个用户登录程序
用户如果登录失败 则只能尝试三次
用户如果登录成功 则直接结束程序
3.编写一个用户登录程序
用户如果登录失败 可以无限制尝试
用户如果登录成功 则进入内层循环 获取用户输入的指令 并打印该指令
eg: 用户输入cmd指令 则程序打印'正在执行您的指令:cmd'
给用户提供一个退出命令 用户一旦输入则退出这个程序
eg: 用户输入q指令 则程序先打印该指令再结束
4.编写猜年龄的游戏(拔高练习 尝试编写)
用户有三次猜测的机会 如果用完则提示用户是否继续尝试
用户输入y则继续给三次机会 如果用户输入q则直接结束程序
5.整理今日内容及博客
———————————————————————————————————————————————————————————————————————————————————————
作业
1.准确说出下列判断的结果(不要执行代码)
v1 = 1 or 3
答:1
v2 = 1 and 3
答:3
v3 = 0 and 2 and 1
答:0
v4 = 0 and 2 or 1
答:1
v5 = 0 and 2 or 1 or 4
答:1
v6 = 0 or False and 1
答:False
2.编写一个用户登录程序
用户如果登录失败 则只能尝试三次
用户如果登录成功 则直接结束程序
3.编写一个用户登录程序
用户如果登录失败 可以无限制尝试
用户如果登录成功 则进入内层循环 获取用户输入的指令 并打印该指令
eg: 用户输入cmd指令 则程序打印'正在执行您的指令:cmd'
给用户提供一个退出命令 用户一旦输入则退出这个程序
eg: 用户输入q指令 则程序先打印该指令再结束
4.编写猜年龄的游戏(拔高练习 尝试编写)
用户有三次猜测的机会 如果用完则提示用户是否继续尝试
用户输入y则继续给三次机会 如果用户输入q则直接结束程序
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)