很高兴你能坚持学习到这里,
下面我们将通过练习来巩固学到的知识.
注1: 本篇中所有需求的代码都设置断点在第一行, 并以调试模式运行, 且多次运行直到你明白为止
注2: 编写每个需求前, 请清空所有代码, 确保每次都是从0开始编写
需求1: 创建一个函数名为getRandomListBy, 拥有1个参数n, 返回一个长度为n的随机数列表
import random
def getRandomListBy(n):
list1 = []
i = 0
while i < n:
v = random.randint(1, 100)
list1.append(v)
i = i + 1
return list1
需求2: 创建一个函数名为getRandomListBy3, 拥有3个参数(n, start, end), 返回一个长度为n的随机数列表(其随机数在start至end之间)
需求3: 调用getRandomListBy3生成20个随机数(值在20-30之间), 返回值给list2并打印其值; 累积其所有成员值并输出结果
需求4: 调用getRandomListBy3生成20个随机数(值在1-100之间), 返回值给list2; 然后查找值为99的成员并输出其索引 (如果没有找到则重新生成list2直到找到为止)
需求5: 调用getRandomListBy3生成100个随机数(值在1-100之间), 返回值给list2并打印其值; 然后约束list2所有成员值都在20-80之间, 再打印list2
需求6: 调用getRandomListBy3生成10个随机数(值在30-40之间), 返回值给list2并打印其值; 删除里面值为偶数的成员, 再打印list2
需求7: 创建一个函数名为getRandomString, 拥有3个参数(n, ascii_start, ascii_end), 返回一个长度为n的随机字符串(其字符在ascii_start至ascii_end之间)
需求8: 创建一个字典dict1, 并调用getRandomString(10, 65, 77)为其生成10个key, value是getRandomListBy3(10, 1, 100), 再打印dict1
需求9: 在需求8的基础上, 遍历dict1, 如果key的首字母为ABC其中一个的话, 则输出对应的value所有成员的累积值
需求10: 在需求8的基础上, 遍历dict1, 如果key含有DEF三个字母, 则更新对应的value为一个随机数(值在1-100之间), 最后再打印dict1
需求11: 在需求8的基础上, 遍历dict1, 如果key含有2个或以上的G字母, 则删除此key, 最后再打印dict1
需求12: 在需求8的基础上, 遍历dict1, 把所有key替换成对应的小写字母, 最后再打印dict1
最后, 当你已经可以不用看着示例写出以上所有需求时, 请自我测试.
在60分钟内完成测试, 你就通过了高阶测试! 成为一名初级程序员!
(1-2) 函数
(3) list-c
(4) list-r
(5) list-u
(6) list-d
(7) 函数
(8) dictionary-c
(9) dictionary-r
(10) dictionary-u
(11) dictionary-d
(12) dictionary-mix