基础语法(三)

1.while循环

1.基本语法

'''
while 条件:
    语句一
    语句二
    。。。
'''

count = 0
while count < 5:
    print(count)
    count += 1
print('*代码')

2.死循环与效率问题

  1. 纯计算无io的死循环会导致致命的效率问题
while True:
    1 + 1

3.while循环应用

name = 'zhangsan'
password = 123
while 1:
    inp_name = input('请输入用户名')
    inp_password = input('请输入密码:')
    if inp_name == 'zhangsan' and int(inp_password) == 123:
        print('登陆成功')
    else:
        print('账号名或密码错误')

4.退出循环的两种方式

  1. 将条件改为False,等到下次循环条件判断时才会生效
name = 'zhangsan'
password = 123
tag = True
while tag:
    inp_name = input('请输入用户名')
    inp_password = input('请输入密码:')
    if inp_name == 'zhangsan' and int(inp_password) == 123:
        print('登陆成功')
        tag = False
    else:
        print('账号名或密码错误')
  1. break,只要运行到break就会终止本层循环
name = 'zhangsan'
password = 123
while True:
    inp_name = input('请输入用户名')
    inp_password = input('请输入密码:')
    if inp_name == 'zhangsan' and int(inp_password) == 123:
        print('登陆成功')
        break  # 立刻终止本层循环
    else:
        print('账号名或密码错误')

5.while循环的嵌套

"""
# 每一层都必须配备一个break
while True:
    while True:
        while True:
            break
        break
    break
"""
'''
tag = True
while tag:
    while tag:
        while tag:
            tag = False
'''

# 案例

# 用break结束循环
name = 'zhangsan'
password = 123
while True:
    inp_name = input('请输入用户名')
    inp_password = input('请输入密码:')
    if inp_name == 'zhangsan' and int(inp_password) == 123:
        print('登陆成功')
        while True:
            cmd = input('请输入您的命令:')
            if cmd == 'q':
                break
            print('命令{x}正在执行'.format(x=cmd))
        break  # 立刻终止本层循环
    else:
        print('账号名或密码错误')


	# 用改变循环条件的方式

name = 'zhangsan'
password = 123
tag = True
while tag:
    inp_name = input('请输入用户名')
    inp_password = int(input('请输入密码:'))
    if inp_name == 'zhangsan' and int(inp_password) == 123:
        print('登陆成功')
        while tag:
            cmd = input('请输入您的命令:')
            if cmd == 'q':
                tag = False
            else:
                print('命令{x}正在执行'.format(x=cmd))
        break  # 立刻终止本层循环
    else:
        print('账号名或密码错误')

6.while+continue

  1. 结束本次循环,直接进入下一次
  2. 在continue之后添加同级代码毫无意义,因为永远不会执行
count = 0
while count < 6:
    if count == 4:
        count += 1
        continue
    print(count)
    count += 1

7.while + else

  1. else 包含的代码会在while循环结束后,并且while循环是在没有被break打断的情况下正常结束的,才不会被终止

8.while案例

name = 'egon'
password = '123'
count = 0
tag = True
while tag:
    if count == 3:
        print('输错超过三次退出')
        continue
    inp_name = input('请输入您的用户名:')
    inp_password = input('请输入密码:')
    if inp_name == name and inp_password == password:
        print('登陆成功')
        while tag:
            cmd = input('请输入您的命令:')
            if cmd == 'q':
                tag = False
            else:
                print('命令{x}正在执行'.format(x=cmd))
    else:
        print('用户名或密码输入错误')

上一篇:vnc viewer 绿色版,有哪些实用的vnc viewer绿色版


下一篇:[OHIF-Viewers]医疗数字阅片-医学影像-学习开篇