python基础 Day01 练习题
1 字符串格式化
#!/urs/bin/env python
name = input("Name: ")
age = int(input("Age: "))
job = input("Job: ")
salary = input("Salary: ")
info1 = """
----------- info1 of %s ---------
name: %s
age: %s
job: %s
Salary: %s
""" % (name, name, age, job, salary)
print(info1)
info2 = """
----------- info2 of {_name} ----
Name: {_name}
Age: {_age}
Job: {_job}
Salary: {_salary}
""".format(_name=name,
_age=age,
_job=job,
_salary=salary)
print(info2)
info3 = """
------ info3 of {0} -------
Name: {0}
Age: {1}
Job: {2}
Salary: {3}
""".format(name, age, job, salary)
print(info3)
2 密码非明文显示
#!/urs/bin/env python
# -*- coding:utf-8 -*- import getpass
username = input("username:")
password = getpass.getpass("password:") print(username)
print(password)
注在Pycharm中不可以,在命令行模式运行:python xxx.py可以
1. 用户输入帐号密码进行登陆
2. 用户信息保存在文件内
3. 用户密码输入错误三次后锁定用户

#!/urs/bin/env python
# -*- coding:utf-8 -*- lock_users = []
f0 = open("lock_users.db", encoding="utf-8")
for line in f0.readlines():
line = line.strip()
lock_users.append(line)
f0.close() users_list = []
f1 = open("users.db", "r", encoding="utf-8")
for line in f1.readlines():
line = line.strip().split()
users_list.append(line[0])
users_list.append(line[1])
f1.close() times = 3 for i in range(times):
username = input("Enter your name:")
password = input("Enter your password:") if username in lock_users:
print("\tSorry, you're locked now. Please contact administrators.")
break if username in users_list and password == users_list[users_list.index(username) + 1]:
print("\tWelcome %s login !" % username)
break
else:
print("\tusername or password is wrong.") if i == times-1:
f2 = open("lock_users.db", "a+", encoding="utf-8")
f2.write("\n")
f2.write(username)
f2.close()
print("\t{}, you're locked!".format(username))
三级菜单:
1. 运行程序输出第一级菜单
2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单
3. 菜单数据保存在文件中
4. 让用户选择是否要退出
5. 有返回上一级菜单的功能
评分标准:
用多层嵌套while循环的方式完成作业2,85分
只用一层循环完成作业2,100分
#!/urs/bin/env python
# -*- coding:utf-8 -*- data ={
'北京':{
'海淀区':{
'颐和园', '圆明园遗址公园', '旧土城遗址公园', '大钟寺'
},
'东城区':{
'劳动人民文化宫', '老舍纪念馆', '柳荫公园', '青年湖公园'
},
},
'浙江':{
'杭州':{
'西湖', '西溪湿地', '宋城', '钱塘江', '南宋御街',
},
'绍兴':{
'柯岩风景区、大禹陵、东湖、鲁迅故里',
},
},
'山东':{
'济南':{
'趵突泉 大明湖 千佛山 芙蓉街(小吃街)',
},
'青岛':{
'栈桥,小鱼山,海底世界,第一海水浴场,八大关风景区, 花石楼',
},
},
} flag = True while flag:
for i in data:
print(i)
choose1 = input(">") if choose1 == "q":
flag = False while flag:
for j in data[choose1]:
print("\t", j) choose2 = input(">>")
if choose2 == 'b':
break
elif choose2 == 'q':
flag = False while flag:
for k in data[choose1][choose2]:
print("\t\t",k) choose3 = input(">>>")
if choose3 == 'b':
break
elif choose3 == 'q':
flag = False
#!/urs/bin/env python
# -*- coding:utf-8 -*- menu = {
'北京':{
'海淀':{
'五道口':{
'soho':{},
'网易':{},
'google':{}
},
'中关村':{
'爱奇艺':{},
'汽车之家':{},
'youku':{},
},
'上地':{
'百度':{},
},
},
'昌平':{
'沙河':{
'老男孩':{},
'北航':{},
},
'天通苑':{},
'回龙观':{},
},
'朝阳':{},
'东城':{},
},
'上海':{
'闵行':{
"人民广场":{
'炸鸡店':{}
}
},
'闸北':{
'火车战':{
'携程':{}
}
},
'浦东':{},
},
'山东':{},
} exit_flag = False
current_layer = menu layers = [menu] while not exit_flag:
for k in current_layer:
print(k)
choice = input(">>:").strip()
if choice == "b":
current_layer = layers[-1]
#print("change to laster", current_layer)
layers.pop()
elif choice not in current_layer:continue
else:
layers.append(current_layer)
current_layer = current_layer[choice]
最多可连续3次猜年龄
#!/urs/bin/env python
# -*- coding:utf-8 -*- """
最多可连续3次猜年龄
"""
"""
_age = 56
count = 3 while count > 0:
age = int(input("age = "))
if age == _age:
print("You're right.")
break
elif age > _age:
print("think smaller ... ")
else:
print("think bigger ... ")
count -= 1
else:
print("Sorry, there's not times for you.")
""" _age = 56 for i in range(3):
age = int(input("age = "))
if age == _age:
print("You're right.")
break
elif age > _age:
print("think smaller ... ")
else:
print("think bigger ... ")
else:
print("Sorry, there's not times for you.")
可参看网址:
http://www.cnblogs.com/alex3714/articles/5717620.html
python基础 Day01 练习题的更多相关文章
- Python基础-day01
写在前面 先后接触过很多编程语言,最喜欢的就是C和Python,相比其他语言,C 是神器,优点太多了:个人而言,C 最重要的一点就是能够让你在敲代码的时候是以一个计算机科学家的角度去思考,而不是仅仅停 ...
- python 基础篇练习题
一.练习题 # 1.统计元组中所有数据属于字符串的个数,提示:isinstance() # 数据:t1 = (1, 2, '3', '4', 5, '6') # 结果:3 # 2.将以下数据存储为字典 ...
- python基础阶段练习题 拾英札记(1)
python很灵活,学起来有人机交互的快乐感,贵在坚持. 做题对自学python很有帮助,融汇贯通-查漏补缺-巩固提高. 写了一些注释,希望能对您有所帮助. #1.输入一个3位数,计算个位.百位.十位 ...
- Python基础Day01
Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...
- python基础知识练习题(二)
1. 有两个列表 l1 = [11, 22, 33] l2 = [22, 33, 44] a.获取内容相同的元素列表 li = []l1 = [11, 22, 33] l2 = [22, 33, 44 ...
- python基础知识练习题(一)
1.执行Python脚本的两种方式:WIN+R,cmd,命令行窗口输入:python 进入python模式输入命令行直接执行命令:编写以.py结尾的文件,写入命令行,然后运行python.exe打开 ...
- python基础之练习题(一)
1.执行 Python 脚本的两种方式 python test.py chmod +x test.py && ./test.py 2.简述位.字节的关系 二进制位(bit)是计算机存储 ...
- python基础知识练习题一
1.执行Python脚本的两种方式 1.在计算机终端(运行cmd),输入安装的Python路径,然后输入Python脚本的路径,回车. 2.直接运行python 2.简述位.字节的关系. 1字节 = ...
- 8道Python基础面试练习题
1.26个字母大小写成对打印,例如:Aa,Bb...... for i in range(26): print(chr(65+i)+chr(97+i)) 2.一个list包含10个数字,然后生成一个新 ...
随机推荐
- 使用CXF框架集成Spring实现SOAP Web Service
- JDK的安装与配置以及eclipse的使用
一,需要软件: jdk 和eclipse 二,JDK和eclipse的下载 JDK下载地址:http://www.oracle.com/technetwork/java/javase/download ...
- android selector 开始自定义样式
Selector的结构描述: <?xml version="1.0" encoding="utf-8"?> <selector xmlns:a ...
- 开发Windows Phone应用程序之后的感觉
刚刚历时一个多月完成了酒美网(我之前的公司)Windows Phone版客户端,发现自己的自学能力还可以,但是还是有好多东西摸不清,到今天我才刚刚对MVVM入门,更对MVVMLight这个框架有进一步 ...
- 在virtualbox中安装CentOS-7
当初才接触linux的时候,因为条件限制,只能在虚拟机中安装linux系统使用,由于是小白,爬了好多坑.于是决定写一篇关于在虚拟机中安装linux系统的博客.一是为了巩固自己的知识,二是希望能够对新手 ...
- iBatis框架batch处理优化 (转)
为什么要做batch处理 这个问题我就不解释了,因为我想你们肯定能比我解释的更好!如果你真的不知道,那就到Google上去搜索一下吧☻Oracle回滚段 这个问题偶也不很明白,只是 ...
- Spring Mvc + Mybatis + sqlserver maven
mybatis config datasource: <!-- 配置数据源 使用的是Druid数据源 --> <bean name="dataSource" c ...
- centOs安装jdk1.7
1,下载jdk-7u75-linux-x64.tar.gz,地址http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloa ...
- C#获取EF实体对象或自定义属性类的字段名称和值
在年前上班的时候遇到了一个问题是这样描述的:我前台设计一个页面,是标签和文本框,当用户修改了哪个文本框的值,将该修改前的值.修改后的值,该值对应的字段,该值对应的行id获取到保存到数据库的某张表里.现 ...
- LA 4255 UVa1423 拓扑排序
题目给出的是Sij的正负号,Sij=ai+...+aj,所以令前缀和Bi=a0+a1+..+ai,a0=0,B0=0,则有Sij=Bj-B(i-1): 由此构造出Bi的拓扑序列,只要每个拓扑序列相邻的 ...