老男孩python作业1
作业1:编写登陆接口
(1)输入用户名密码
(2)认证成功后显示欢迎信息
(3)输错三次后锁定
(1)三级菜单
(2)可依次选择进入各子菜单
(3)所需新知识点:列表、字典
任务1思路:
1.先设定用户名和密码
2.while循环判断输入次数,若输入次数少于输入上限则进入下一步
3.利用input让用户输入用户名密码
4.利用if语句进行判断输入是否正确,若正确显示欢迎光临,若不正确则让其再次输入用户名和密码
5.若输入错误次数太多,将其锁定 代码如下:
username="lucky"
password=""
count=0
while count<3:
name=input("输入用户名:")
psw=input("输入密码:")
if username==name and password==psw:
print("欢迎光临")
break
else:
print("用户名或密码错误,请重新输入")
count+=1
if count==3:
print("错误次数太多已被锁定")
break
任务2思路:
1.先定义一个字典,包含学校,学院,专业(中国计量大学,浙江理工大学,浙江工业大学)
(机电学院、理学院、法学院)(机械设计、自动化、测控)(物理、数学、统计学)(民法、刑法、宪法)
2.假定用户输入为字典的键或b(返回上一级)或q(退出)
3.打印第一级菜单目录,让用户选择,进行相关操作
menu={
"中国计量大学":{
"机电学院":{
"机械设计":"张三",
"自动化":"李四",
"测控":"王五"
},
"理学院":{
"物理":"A",
"数学":"B",
"化学":"C"
},
"法学院":{
"民法":"linda",
"刑法":"tom",
"宪法":"jack"
}
},
"浙江理工大学":{
"机电学院":{
"机械设计":"",
"自动化":"",
"测控":""
},
"理学院":{
"物理":"",
"数学":"",
"化学":""
},
"法学院":{
"民法":"",
"刑法":"",
"宪法":""
}
},
"浙江工业大学":{
"机电学院":{
"机械设计":"",
"自动化":"",
"测控":""
},
"理学院":{
"物理":"",
"数学":"",
"化学":""
},
"法学院":{
"民法":"",
"刑法":"",
"宪法":""
}
}
}
quit_flag=False
#本程序难点在于设置一个退出标志位,使其能够一次退出多个while循环
while not quit_flag:
for i1 in menu:
print(i1)
choose1=input("请选择大学名称:")
if choose1 in menu:
while not quit_flag:
for i2 in menu[choose1]:
print(i2)
choose2= input("请选择学院名称:")
if choose2 in menu[choose1]:
while not quit_flag:
for i3 in menu[choose1][choose2]:
print(i3)
choose3 = input("请选择专业名称:")
if choose3 in menu[choose1][choose2]:
print(menu[choose1][choose2][choose3],"已到最后一级目录")
quit_flag=True
elif choose3=="q":
quit_flag = True
elif choose3=="b":
break
elif choose2=="q":
quit_flag=True
elif choose2=="b":
break
elif choose1=="q":
break
老男孩python作业1的更多相关文章
- 老男孩python作业8-学员管理系统
学员管理系统开发: 需求: 用户角色,讲师\学员, 用户登陆后根据角色不同,能做的事情不同,分别如下 讲师视图 管理班级,可创建班级,根据学员qq号把学员加入班级 可创建指定班级的上课纪录,注意一节上 ...
- 老男孩python作业7-开发一个支持多用户在线的FTP程序
作业6:开发一个支持多用户在线的FTP程序 要求: 用户加密认证 允许同时多用户登录 每个用户有自己的家目录 ,且只能访问自己的家目录 对用户进行磁盘配额,每个用户的可用空间不同 允许用户在ftp s ...
- 老男孩python作业6-选课系统开发
角色:学校.学员.课程.讲师要求:1. 创建北京.上海 2 所学校2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. 课程包含,周期,价格 ...
- 老男孩python作业5-开发一个简单的python计算器
开发一个简单的python计算器 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568 ...
- 老男孩python作业4-ATM程序开发
实现一个ATM + 购物商城程序: 额度 15000或自定义 实现购物商城,买东西加入 购物车,调用信用卡接口结账 可以提现,手续费5% 支持多账户登录 支持账户间转账 记录每月日常消费流水 提供还款 ...
- 老男孩python作业2-购物车程序
购物车程序要求: 1.启动程序后,输入用户名密码后,如果是第一次登录,让用户输入工资,然后打印商品列表 2.允许用户根据商品编号购买商品 3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 ...
- 老男孩python作业9-简单的商城页面布局
利用HTML相关知识编写下面的网页: 核心代码如下: <!DOCTYPE html> <html lang="en"> <head> <m ...
- 老男孩python作业3-购物车程序优化
购物车优化要求:用户入口: 1.商品信息存在文件里 2.已购商品,余额记录.第一次启动程序时需要记录工资,第二次启动程序时谈出上次余额 3.允许用户根据商品编号购买商品 4.用户选择商品后,检测是否够 ...
- 老男孩Python全栈学习 S9 日常作业 006
1.使用循环打印以下效果: 1: * ** *** **** ***** 2: ***** **** *** ** * 3: * *** ***** ******* ********* for i i ...
随机推荐
- 思考ASP.NET网站静态化的利与弊
最近在思考网站要不要进行静态化的问题,在网上收集和整理了有关静态化利与弊的资料,于是写下此博文分享到网络上.由于本人是一名asp.net开发人员,所以本文的观点可能无法涉及到全部方面,但是比较注重于使 ...
- Gym 101128 B Black Vienna
题意 有A-Z 26张牌,现在从中抽出3张牌,并把剩下的23张牌分给选手1和2,现在有n次询问,每次询问一个选手是否有某两张牌,和选手的回答.回答说自己有这两张牌中的几张,问拿出的三张牌有多少种方案能 ...
- Servlet接口应用(开发servlet三种方式)
参见 文库/java/javaEE全新学习教程2.2节 1.通过URL调用 2通过提交表单 3超链接 4 javascript写一个函数,调用这个函数 1,首先在工程的WebRoot文件夹下建立一个j ...
- 2、awk的输出
1.常见的输出格式整理 awk '{print "this is " $1, $2, $1*$2, NR, NF, $NF}' file1 ###字符输出,字段输出,运算输出, ...
- JMS-消息中间件的应用02-安装ActiveMQ-来自慕课学习-新手学习
What is ActiveMQ? -----突然好想打英文,好奇怪 请看来自官网的介绍: Apache ActiveMQ ™ is the most popular and powerf ...
- easyUI form sumit 中文乱码
jsp 编码方式: pageEncoding="UTF-8" tomcat 编码方式: <Connector connectionTimeout="20000&qu ...
- 什么是Condition Number(条件数)?
In the field of numerical analysis, the condition number of a function with respect to an argument m ...
- 编写高质量代码改善C#程序的157个建议——建议20:使用泛型集合代替非泛型集合
建议20:使用泛型集合代替非泛型集合 在建议1中我们知道,如果要让代码高效运行,应该尽量避免装箱和拆箱,以及尽量减少转型.很遗憾,在微软提供给我们的第一代集合类型中没有做到这一点,下面我们看Array ...
- C#中ref和out的作用和区别
相同点:方法的定义和调用都必须显示使用ref.out关键字.都会导致参数按引用传递. 不同点:传递给ref关键字的参数必须赋初始值,而out不用.out关键字会清空变量,即使变量已经赋值也不行,退出函 ...
- 【学习】CodeUi
关于这个,博客园里有很多初级的教程,我是看这篇: http://www.cnblogs.com/luminji/archive/2010/11/18/1880452.html 初学的可以跟着这个做一边 ...