第三天练习题:
- 开发敏感词过滤系统,提示用户输入内容,如果用户输入内容包含特殊的字符:eg:如苍井空,则将内容替换为***
-
sensitive = ['东京热','苍井空','饭岛爱','小泽玛丽亚','大傻逼'] while True: word = str(input("请输入内容:>>")) for i in sensitive: word = word.replace(i, '***') print(word)
-
-
制作表格,循环提示用户输入:用户名、密码、邮箱(要求用户输入的长度不超过20个字符,如果超过则只有
# 前20个字符有效,如果用户输入了q或者Q表示不再继续输入),将用户输入的内容已表格形式打印title = "名字\t密码\t邮箱\n" while True: name = str(input('请输入你的大名:')) if name.casefold() == 'q': print('拜拜') break pwd = str(input('请输入你的密码:')) if pwd.casefold() == 'q': print('拜拜') break email = str(input('请输入你的邮箱: ')) if email.casefold() == 'q': print('拜拜') break Name = name[0:20] Password = pwd[0:20] Email = email[0:20] line = "{0}\t{1}\t{2}\n".format(Name,Password,Email) #格式化输出 table = title + line out = table.expandtabs(30) #将\t tab符扩展到30位 print(out)
第二天练习题:
- 练习题,元素分类:有如下值集合:v1 = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。即: {'k1': 大于66的所有值, 'k2': 小于66的所有值};v2 = {'k1': [],'k2':[] }
1 v1 = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90] 2 v2 = { 3 'k1': [], 4 'k2': [], 5 } 6 for i in v1: 7 if i <= 66: 8 v2['k1'].append(i) 9 else: 10 v2['k2'].append(i) 11 12 print(v2)
- 要求用户输入总资产,例如:2000;显示商品列表,让用户根据序号选择商品,加入购物车购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
1 goods = [ 2 { 'name': '饮水机', 'price': 2000 }, 3 { 'name': '足浴盆', 'price': 299 }, 4 { 'name': '打印机', 'price': 3999 }, 5 { 'name': '碎纸机', 'price': 599 }, 6 ] 7 8 shop_cart = [] 9 asset = int(input('请输入你的总资产')) 10 11 #两种实现方法:方法一:通过输入商品编号来实现。 12 for i in enumerate(goods): 13 print(i) 14 15 s = int(input('请输入商品编号:')) 16 if asset >= goods[s]['price']: 17 print('添加购物车成功:',goods[s]['name']) 18 shop_cart.append(goods[s]['name']) 19 else: 20 print('添加购物车失败,资产不足') 21 22 print(shop_cart) 23 24 #方法二:通过输入商品名来实现。 25 # for item in goods: 26 # print('目前可以购买的商品',item['name']) 27 # 28 # shop = input('请输入你想要购买的商品名字') 29 # for item in goods: 30 # if shop in item['name'] and asset >= item['price']: 31 # shop_cart.append(shop) 32 # else: 33 # print('暂无该商品或资产不足') 34 # break 35 # 36 # print(shop_cart)
- 用户交互,显示省市县三级联动的选择,额外增加一个可以增删改查相关省份的功能
1 province = { 2 '河北': { 3 '保定': ['蓉城','雄县','白沟','安新'], 4 '石家庄': ['藁城','西柏坡','赵县','冀州','高邑'], 5 '邢台': ['桥东区','桥西区','开发区','任县'], 6 }, 7 '河南': { 8 '郑州': ['巩义','中原','新政','登封'], 9 "开封": ['兰考','通许','杞县'], 10 '洛阳': ['孟津','新安','汝阳','嵩县'], 11 }, 12 '湖北': { 13 '武汉': ['武昌','汉阳','江汉','洪山'], 14 '襄阳': ['襄城','樊城','襄州'], 15 '黄冈': ['红安','罗田','英山','黄梅'], 16 }, 17 } 18 19 pro_name = input('请输入想要查看省的名字') 20 21 22 while True: 23 if pro_name in province.keys(): 24 for item in province[pro_name].keys(): 25 print(item) 26 27 city_name = input('还想要在查看城市列表吗?') 28 if city_name in province[pro_name].keys(): 29 for item in province[pro_name][city_name]: 30 print(item) 31 break 32 else: 33 print('输入的省名不正确,请重新输入') 34 pro_name = input('请输入想要查看省的名字')
第一天练习题:
- 求1-100所有数的和
-
1 # !求1-100所有数的和 2 3 i = 1 4 value = 0 5 while i < 101: 6 value += i 7 i += 1 8 9 print(value)
-
- 求100以下基数之和。
-
1 # !求100以下奇数的和 2 3 i = 1 4 value = 0 5 while i < 101: 6 if i % 2 ==1: 7 value = value + i 8 i += 1 9 10 print(value)
-
- 求100以下偶数之和。
-
1 # !求100以下偶数的和 2 3 i = 1 4 value = 0 5 6 while i < 101: 7 if i % 2 == 0: 8 value += i 9 i += 1 10 11 print(value)]
-
- 求1-2+3-4+6。。。。+99所有数的和。
-
1 # !求1-2+3-4+5-6....+99所有数的和 2 3 i = 1 4 value = 0 5 6 while i < 100: 7 if i % 2 == 1: 8 value += i 9 elif i % 2 == 0: 10 value -= i 11 i += 1 12 13 print(value)
-
- 使用while循环输出:1,2,3,4,5,6,8,9,10
-
1 # 使用while循环输出:1,2,3,4,5,6,8,9 2 3 i = 1 4 5 while i < 10: 6 if i == 7: 7 i += 1 8 continue 9 i += 1 10 print(i)
-
1 # 从文件A中读取数据,格式化成数组字典输出。然后再格式话成初始文件保存到另外一个文件中。 2 ''' 3 zhang|123123|0 4 zhao|abcabc|0 5 wang|abc123|0 6 li|a!b@c#|0 7 ''' 8 #打开文件:db。 9 file = open('db','r') 10 #读取db文件中的数据,并赋值给变量 data。 11 data = file.read() 12 file.close() 13 #定义一个空的 usr_account_list 14 usr_account_list = [] 15 #去除换行符并复制给user_info_list. 将user_info_list 变成一个列表。 16 usr_info_list = data.split('\n') 17 for item in usr_info_list: 18 print(item) 19 temp = item.split('|') 20 v = { #定义一个字典 21 'name': temp[0], 22 'passWd': temp[1], 23 'times': temp[2], 24 } 25 usr_account_list.append(v) #将字典嵌套到列表中,并输出 26 print(usr_account_list) 27 28 ################################ 29 #将 usr_account_list 再格式回去并重新保存到另外的文件中。 30 31 file2 = open('account','w') 32 33 for item in usr_account_list: 34 file2.write(str(item['name']) + '|' + str(item['passWd']) + '|' + str(item['times'])+ '\n') 35 36 file2.close()