码迷,mamicode.com
首页 > 编程语言 > 详细

《python核心教程2》第七章 练习

时间:2019-02-14 10:23:55      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:nio   abc   std   while   items   更正   错误   ...   class   

7-4. 建立字典。

给定两个长度相同的列表,比如说,列表[1, 2, 3,...]和[‘abc‘, ‘def‘,‘ghi‘,...],用这两个列表里的所有数据组成一个字典,像这样:{1:‘abc‘, 2: ‘def‘, 3: ‘ghi‘,...}

1 listdict = dict(zip([1,2,3], [abc,def,ghi]))
2 print(listdict)

7-7. 颠倒字典中的键和值。用一个字典做输入,输出另一个字典,用前者的键做值,前者的值做键。

1 dict_sort = {1: a, 2: b}
2 dictreverse = {}
3 for key, value in dict_sort.items():
4     dictreverse[value] = key
5 print(dictreverse)

7-8. 人力资源。

创建一个简单的雇员姓名和编号的程序。让用户输入一组雇员姓名和编号。你的程序可以提供按照姓名排序输出的功能,雇员姓名显示在前面,后面是对应的雇员编号。附加题:添加一项功能,按照雇员编号的顺序输出数据。

1 name_number = {}
2 while True:
3     name = input("输入姓名:")
4     number = input("输入编号:")
5 
6     name_number[name] = number
7     for name, number in name_number.items():
8         print(name, :, number)
9         print(number, :, name)

 

7–13. 随机数。
修改练习5-17 的代码:使用random 模块中的randint()或randrange()方法生成一个随机数集合:从0 到9(包括9)中随机选择,生成1 到10 个随机数。这些数字组成集合A(A 可以是可变集合,也可以不是)。同理,按此方法生成集合B。每次新生成集合A 和B 后,显示结果 A | B 和 A & B

7-14. 用户验证。修改前面的练习,要求用户输入A|B和A&B的结果,并告诉用户的答案是否正确,而不是将A|B和A&B的结果直接显示出来。如果用户回答错误,允许他修改解决方案,然后重新验证用户输入的答案。如果用户三次提交的答案均不正确,程序将显示正确结果。附加题:运用你关于集合的知识,创建某个集合的潜在子集,并询问用户此潜在子集是否真是该集合的子集,要求和主程序一样有显示更正和答案的功能。

 1 import random
 2 A = []
 3 B = []
 4 for i in range(random.randint(1,11)):
 5     A.append(random.randint(0, 9))
 6     B.append(random.randint(0, 9))
 7 print(A:, set(A))
 8 print(B:, set(B))
 9 C = set(A) | set(B)
10 D = set(A) & set(B)
11 
12 i = 0
13 while i <= 3:
14 
15     union = set(input(Union: ))
16     intersection = set(input(Intersection: ))
17     if union == C:
18         print(回答正确)
19     if intersection == D:
20         print(回答正确)
21     else:
22         print(回答错误)
23         i += 1

《python核心教程2》第七章 练习

标签:nio   abc   std   while   items   更正   错误   ...   class   

原文地址:https://www.cnblogs.com/QQ269075164/p/10367971.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!