作业1:每周写博客,强制回顾;
作业2:编写登陆接口
输入用户名密码
认证成功后显示欢迎信息
输入三次后锁定
作业3:多级菜单
三级菜单
可依次选择进入各子菜单
所需新知识点、列表、字典
作业2解:
data.txt
{‘normal’: {‘xiaoliang’: ‘456789’,‘xiaoqiang’:‘123456’, ‘xiaoxiao’:‘123456’}, ‘ban’: [‘xiaoming’]}
# -*- coding:utf-8 -*-
# Author:Chris Liu
info = '''
---欢迎使用XX软件---
'''
print(info)
file = open('data.txt','r') #打开账号密码数据文本
data = dict(eval(file.read())) #读取文本,转换为字典
file.close()
account = input('请输入账号:')
if account in list(data['normal'].keys()) :
count = 0
while True:
password = input('请输入密码:')
count += 1
if password == data['normal'][str(account)]:
print('登陆成功')
input(' ')
break
else:
if count == 3:
print('您的密码超过3次输入错误,账号被锁定,禁止登陆!')
data['ban'].append(account)
del data['normal'][account]
file = open('data.txt','w')
file.write(str(data))
break
print(('您输入的密码不正确,还剩下 %s 次机会') % (3 - count))
elif account in data['ban']:
print('您的账号已经被锁定禁止登陆!')
else:
print('您输入的账户不存在')
作业3解:
# -*- coding:utf-8 -*-
# Author:Chris Liu
continent = {'Asia':{'China':['Guangdong','Beijing'],'Japan':['Tokyo','Osaka']},
'Europe':{'England':['Bath','Ely'],'France':['Agen','Caen']}}
while True:
input_value = input('请输入“q”前进:')
while input_value == 'q':
print(list(continent.keys())) #打印州
input_place = input('输入您要进入的地区 或按 “e” 返回上级:')
if input_place == 'e':
break #结束循环
while input_place in list(continent.keys()):
print(list(continent[str(input_place)].keys())) #打印国家
input_Country = input('输入您要进入的国家 或按 “e” 返回上级:')
if input_Country == 'e':
break #结束循环
if input_Country in list(continent[str(input_place)].keys()):
print(continent[str(input_place)][str(input_Country)]) #打印省市
input('按任意键返回上级:')
else :
input('输入错误,按任意键返回:')
else :
input('输入错误,按任意键返回:')