条件循环:while,语法如下
while 条件:
# 循环体
# 如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件。。。
# 如果条件为假,那么循环体不执行,循环终止
死循环
基本使用1:
print('start.....')
while 10 < 3:
print('hello1')
print('hello2')
print('hello3')
print('end....')
View Code
基本使用2:
count = 0
while count < 6: # 6 < 6
print(count)
count += 1
print('end.....')
1、基本使用:
db_name = "egon"
db_pwd = "123"
while True:
inp_name = input("请输入您的用户名: ")
inp_pwd = input("请输入您的密码: ")
if inp_name == db_name and inp_pwd == db_pwd:
print("用户登录成功")
else:
print("用户账号或密码错误")
2、如何结束while循环
(1)把条件改为False
db_name = "egon"
db_pwd = "123"
tag = True
while tag:
inp_name = input("请输入您的用户名: ")
inp_pwd = input("请输入您的密码: ")
if inp_name == db_name and inp_pwd == db_pwd:
print("用户登录成功")
tag = False
else:
print("用户账号或密码错误")
print('其他。。。。。。。。。')
(2)break:直接终止本层循环
db_name = "egon"
db_pwd = "123"
while True:
inp_name = input("请输入您的用户名: ")
inp_pwd = input("请输入您的密码: ")
if inp_name == db_name and inp_pwd == db_pwd:
print("用户登录成功")
break
else:
print("用户账号或密码错误")
print('其他。。。。。。。。。')
循环嵌套
while True:
while True:
while True:
break
break
break
tag = True
while tag:
while tag:
while tag:
tag = False
3、死循环
while True:
# print('Hello')
# input(">>: ")
1+1
4、while+continue: 终止本次循环
强调1:不要在continue之后编写同级别的代码
count = 0
while count < 6: # 5 < 6
if count == 3
or count == 4:
count += 1
continue
# count+=1 # 不要写在这里
print(count)
count += 1
强调2: 如果不想执行本次循环之后的代码,可以用continue,但是如果本次循环本来就没有要继续运行的后续代码了,就没必要加continue了
db_name = "egon"
db_pwd = "123"
while True:
inp_name = input("请输入您的用户名: ")
inp_pwd = input("请输入您的密码: ")
if inp_name == db_name and inp_pwd == db_pwd:
print("用户登录成功")
break
else:
print("用户账号或密码错误")
# continue
5、while+else
count = 0
while count < 6:
print(count)
if count == 3:
break
count+=1
else:
print('会在while循环正常死亡之后运行')
例子:
5、 while循环嵌套
db_name = "egon"
db_pwd = "123"
while True:
inp_name = input("请输入您的用户名: ")
inp_pwd = input("请输入您的密码: ")
if inp_name == db_name and inp_pwd == db_pwd:
print("用户登录成功")
while True:
print("""
0 退出
1 取款
2 提现
3 转账
""")
cmd=input("请输入您的命令编号:")
if cmd == "0":
break
elif cmd == "1":
print("正在取款")
elif cmd == "2":
print("正在提现")
elif cmd == "3":
print("正在转账")
else:
print("不知道的指令,请重新输入")
break
else:
print("用户账号或密码错误")
tag的方式结束循环
db_name = "egon"
db_pwd = "123"
tag = True
while tag:
inp_name = input("请输入您的用户名: ")
inp_pwd = input("请输入您的密码: ")
if inp_name == db_name and inp_pwd == db_pwd:
print("用户登录成功")
while tag:
print("""
0 退出
1 取款
2 提现
3 转账
""")
cmd=input("请输入您的命令编号:")
if cmd == "0":
tag = False
elif cmd == "1":
print("正在取款")
elif cmd == "2":
print("正在提现")
elif cmd == "3":
print("正在转账")
else:
print("不知道的指令,请重新输入")
else:
print("用户账号或密码错误")
count = 2
x = 0
while count <= 100:
if count % 2 == 0:
x = x + count
else:
x -= count
count += 1
print(x)
for 循环
1、for循环主要用于循环取值,例如列表、字典、字符串
2、for循环循环的次数取决于值的个数
while循环循环的次数取决条件什么时候变为False或者什么时候执行break
一:基本使用
l = [1111, 222, 333, 444, 555]
i = 0
while i < len(l):
print(l[i])
i += 1
for x in l:
print(x)
d = {"k1": 111, "k2": 2222, "k3": 33333}
for k in d:
print(k,d[k])
msg="hello world"
for x in msg:
print(x)
l = [["aaa", 1111], ["bbb", 2222], ["ccc", 3333]]
for x, y in l: # x,y=["aaa",1111]
print(x, y)
二:for + break
for x in [111,222,333,4444,555]:
if x == 333:
break
print(x)
三:for + continue
for x in [111,222,333,4444,555]:
if x == 333:
continue
print(x)
四:for + else
for x in [111,222,333,4444,555]:
if x == 333:
break
print(x)
else:
print('=====>')
上节课我们已经学会用if .. else 来猜年龄的游戏啦,但是只能猜一次就中的机率太小了,如果我想给玩家3次机会呢?就是程序启动后,玩家最多可以试3次,这个怎么弄呢?你总不会想着把代码复制3次吧。。。。