#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Ma Qing data = { "山东" :{
"济南" :{
"济南市" :{
"市中区" :{},
"历下区" :{},
"天桥区" :{},
"槐荫区" :{},
"历城区" :{},
"长清区" :{},
},
"章丘市" :{},
},
"青岛" :{
"青岛市" :{
"市南区" :{},
"市北区" :{},
"城阳区" :{},
"四方区" :{},
"李沧区" :{},
"黄岛区" :{},
"崂山区" :{},
},
"胶南市" :{},
"胶州市" :{},
"平度市" :{},
"莱西市" :{},
"即墨市" :{},
},
"烟台" :{
"烟台市" : {
"芝罘区" :{},
"莱山区" :{},
"开发区" :{},
"福山区" :{},
"高新区" :{},
"牟平区" :{},
},
"招远市" : {},
"龙口市" : {},
"莱州市" : {},
"蓬莱市" : {},
},
"潍坊" :{},
"淄博" :{},
"滨州" :{},
"济宁" :{},
"枣庄" :{},
},
"北京" :{},
"上海" :{},
}
exit_flag = False
while not exit_flag:
for i in data:
print(i) choice = input("选择进入>>:")
if choice in data:
while not exit_flag:
for j in data[choice]:
print("\t",j)
choice2 = input("选择进入>>:")
if choice2 in data[choice]:
while not exit_flag:
for k in data[choice][choice2]:
print("\t",k)
choice3 = input("选择进入3:")
if choice3 in data[choice][choice2]:
for v in data[choice][choice2][choice3]:
print("\t\t",v)
choice4 = input("最后一层,按b返回!")
if choice4 == "b":
pass
elif choice4 == "q":
exit_flag = True
if choice3 == "b":
break
elif choice3 == "q":
exit_flag = True
if choice2 == "b":
break
elif choice2 == "q":
exit_flag = True

三级菜单初版

作业一:编写登录接口

  • 输入用户密码
  • 认证成功后显示欢迎信息
  • 输错三次后锁定

作业二:多级菜单

  • 三级菜单
  • 可一次选择进入各子菜单
  • 所需新知识点:列表、字典
 count = 0
exit_flag = False
_username = input("请输入用户名:")
lock_file = open("account_lock","r+")
lock_list = lock_file.readlines()
for lock_line in lock_list:
if _username == lock_line.strip(): #删除空行
print("账号已被锁定!")
break #跳出for。。
else:
user_file = open("account","r")
user_list = user_file.readlines() #这里要用.readlines()
for user_line in user_list:
username,password=user_line.split(",") #分割赋值
if _username == username :
while not exit_flag:
if count <3:
_password = input("请输入密码:")
if _password == password:
print("登录成功!")
exit_flag = True
break #终止for循环
else:
print("账号或密码错误,请重新登录!")
count +=1
user_file.close()
else:
print("账号已被锁定")
lock_file.write("\n")
lock_file.write(_username)
exit_flag = True
else:
print("账号不存在!")

登录接口初版

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Ma Qing data = { "山东" :{
"济南" :{
"济南市" :{
"市中区" :{},
"历下区" :{},
"天桥区" :{},
"槐荫区" :{},
"历城区" :{},
"长清区" :{},
},
"章丘市" :{},
},
"青岛" :{
"青岛市" :{
"市南区" :{},
"市北区" :{},
"城阳区" :{},
"四方区" :{},
"李沧区" :{},
"黄岛区" :{},
"崂山区" :{},
},
"胶南市" :{},
"胶州市" :{},
"平度市" :{},
"莱西市" :{},
"即墨市" :{},
},
"烟台" :{
"烟台市" : {
"芝罘区" :{},
"莱山区" :{},
"开发区" :{},
"福山区" :{},
"高新区" :{},
"牟平区" :{},
},
"招远市" : {},
"龙口市" : {},
"莱州市" : {},
"蓬莱市" : {},
},
"潍坊" :{},
"淄博" :{},
"滨州" :{},
"济宁" :{},
"枣庄" :{},
},
"北京" :{},
"上海" :{},
}
exit_flag = False
while not exit_flag:
for i in data:
print(i) choice = input("选择进入>>:")
if choice in data:
while not exit_flag:
for j in data[choice]:
print("\t",j)
choice2 = input("选择进入>>:")
if choice2 in data[choice]:
while not exit_flag:
for k in data[choice][choice2]:
print("\t",k)
choice3 = input("选择进入3:")
if choice3 in data[choice][choice2]:
for v in data[choice][choice2][choice3]:
print("\t\t",v)
choice4 = input("最后一层,按b返回!")
if choice4 == "b":
pass
elif choice4 == "q":
exit_flag = True
if choice3 == "b":
break
elif choice3 == "q":
exit_flag = True
if choice2 == "b":
break
elif choice2 == "q":
exit_flag = True

三级菜单初版

Day1作业---登录接口及多级菜单的更多相关文章

  1. day1作业--登录接口

    作业:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定     知识: 1.循环的使用: 2.continue,break在循环中中断的作用: 3.文件的写入,读取: 4.各基础知 ...

  2. day1作业登录接口总结

    作业一:编写登陆接口 1.输入用户名和密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 上面作业,用了几种思路来解决问题:但是本质上其实都是一样的:核心都是对文件的操作,文件的增删改查:并且这些操 ...

  3. day1作业--登录入口

    作业概述: 编写一个登录入口,实现如下功能: (1)输入用户名和密码 (2)认证成功后显示欢迎信息 (3)输错三次后锁定 流程图: readme: 1.程序配置文件: 黑名单文件blacklist.t ...

  4. Python作业--登录接口

    作业需求: 编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 实现思路: 1.从文件获取用户名密码 2.判断是否在黑名单中 3.验证用户名密码 成功:输出认证成功 错误:判断验证次 ...

  5. python学习,day1作业:设计一个三级菜单

    设计一个三级菜单,要求能够下钻,能够推出,比较笨的方法 # coding=utf-8 # Author: RyAn Bi data = { 'beijing':{ 'changping':{ 'wud ...

  6. day1作业二:多级菜单操作

    作业二:多级菜单 (1)三级菜单 (2)可以次选择进入各子菜单 (3)所需新知识点:列表.字典 要求:输入back返回上一层,输入quit退出整个程序 思路: (1)首先定义好三级菜单字典: (2)提 ...

  7. day1作业二:多级菜单操作(函数实现)

    作业二:多级菜单 (1)三级菜单 (2)可以次选择进入各子菜单 (3)所需新知识点:列表.字典 要求:输入back返回上一层,输入quit退出整个程序 本示例的三级菜单是一个yaml文件格式,格式如下 ...

  8. day1作业:登录接口

    作业一:编写登陆接口 1.输入用户名和密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 思路: (1)用户输入用户名: (2)去锁定文件中验证用户名是否锁定: (3)去当前用户验证用户是否存在: ...

  9. day1 作业二:多级菜单操作

    作业二:多级菜单 (1)三级菜单 (2)可以次选择进入各子菜单 (3)所需新知识点:列表.字典 要求:输入b返回上一层,输入q退出整个程序 思路:三级菜单第一级别是省,第二级别是市,第三级别是县,用户 ...

随机推荐

  1. python 中文字符的处理

    刚开始学习python的时候,都是对这英文的翻译书学习的.没有解除到中文编码的相关问题,直到自己用python去做相关的项目的时候才发先中文编码问题真的非常头疼啊.这里分享一下本人所了解的一些经验. ...

  2. Python 循环语句(while, for)

    # while的使用 # 要注意些循环的时候,要考虑好循环的结束 # 考虑循环结束的方法有2种: # 1.考虑在循环体里改变while 的条件 # 2.在循环体通过break 语句跳出循环 # 方法1 ...

  3. linux crontab使用

    1.查看.编辑和删除 cron把命令行保存在crontab(cron table)文件里,这个文件通常在 /etc 目录下. 每个系统用户都可以有自己的crontab(在 /var/spool/cro ...

  4. hihoCoder挑战赛27题目一 福字 (dp)

    题目: 一个n × n的矩阵,其中每个位置都是一个非负整数. 一个福字被定义成是大小为 k 的正方形,满足其中的每个位置上的数都恰好比他的左边的那个和上边的那个大1(如果左边或上边的那个不存在的话就无 ...

  5. 天地图OGC WMTS服务规则

    图层名称 服务地址 投影类型 矢量底图 http://t0.tianditu.gov.cn/vec_c/wmts?tk=您的密钥 经纬度投影 http://t0.tianditu.gov.cn/vec ...

  6. 红米1S.线刷

    ZC:遇到问题:“Missmatching image and device”,解决网址:“[2.23][史上最全]MiFlash线刷错误的那些事儿_收藏备用_小米手机4_MIUI论坛.html”(h ...

  7. 第一个Python程序hello.py提示出现File "<stdin>",line 1错误

    写第一个Python程序hello.py,内容仅有一句,print 'hello world', 运行 Python hello.py 出错,提示: File "<stdin>& ...

  8. HDU 1052 贪心+dp

    http://acm.hdu.edu.cn/showproblem.php?pid=1052 Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS ...

  9. splunk的统计分析功能——特定字段的统计功能包括取值分布(+topK,min/max/平均值)

    特定字段的统计功能——取值分布,topK,min/max/平均值 例如: date_second 60 值, 100% 的事件 时段平均值 时段最大值 时段最小值 上限值 时段上限值 罕见值 具有此字 ...

  10. [转载]java导出word的5种方式

    在网上找了好多天将数据库中信息导出到word中的解决方案,现在将这几天的总结分享一下.总的来说,java导出word大致有5种解决方案: 1:Jacob是Java-COM Bridge的缩写,它在Ja ...