3.1.3 多分支结构
当需要根据多个条件进行判断,满足不同条件执行不同代码块时,需要编写多分支结构。Python 中if 语句与elif 语句和else 语句结合可实现多分支结构。
多分支结构的使用格式如下:
if 表达式1:
代码块1
elif 表达式2:
代码块2
∶
∶
∶
elif 表达式n:
代码块n
else:
代码块n+1
程序执行时,由上至下依次判断表达式是否为真,如果为真则执行其后的代码块,整个多分支结构结束,否则继续向下判断,当所有表达式结果都为假时,执行else 后的语句块。
下面修改ch3-3.py 文件。如果用户正确输入管理员级的用户名和密码则欢迎管理员用户,如果用户正确输入普通用户级的用户名和密码则欢迎普通用户,否则提示用户输入正确的用户名和密码(源代码:ch3-4.py)。
分析:相比ch3-3.py,本例需要两个字典,一个存储管理员信息,一个存储普通用户信息,用户输入用户名和密码后先判断其是不是管理员用户,再判断其是不是普通用户,如果都不是则提示用户输入正确的用户名和密码。
# -*- coding: utf-8 -*-
a=dict((['admin1','123'],['admin2','456'],['admin3','789']))
u=dict((['mike','001'],['mary','002'],['john','003'],['tom','004'],['jenny','005'],['herry','006']))
b=raw_input('please input your name: ')
c=raw_input('please input your password: ')
if (b in a) andc==a[b]:
print u'欢迎管理员 ',b
elif (b in u) andc==u[b]:
print u'欢迎用户 ',b
else:
print u'请输入正确的用户名和密码'
运行程序,依次输入admin1,123,运行结果如下:
please input your name: admin1
please input your password: 123
欢迎管理员 admin1
运行程序,依次输入mary,002,运行结果如下:
please input your name: mary
please input your password: 002
欢迎用户 mary
运行程序,依次输入jon,003,运行结果如下:
please input your name: jon
please input your password: 003
请输入正确的用户名和密码
喜欢的朋友可以添加我们的微信账号:
51CTO读书频道二维码
51CTO读书频道活动讨论群:365934973
【责任编辑:book TEL:(010)68476606】
点赞 0