习题
1.已知x=list(range(10)),则表达式x[-4:]的值为__________。
2.已知x=[3, 5, 7],那么执行语句x[1:]=[2]之后,x的值为__________。
3.已知x=[3,5,3,7],那么表达式[x.index(i) for i in x if i==3]的值为__________。
4.已知x=[1, 2, 3, 2, 3],执行语句x.pop()之后,x的值为_____________。
5.已知x = [3, 7, 5],那么执行语句x = x.sort(reverse=True)之后,x的值为__________。
6.表达式 {1, 2, 3, 4}-{3, 4, 5, 6}的值为__________。
7.表达式 {1:'a', 2:'b', 3:'c'}.get(4, 'd') 的值为__________。
8.语句sorted([1, 2, 3], reverse=True)==reversed([1, 2, 3])的执行结果为__________。
9.表达式[1, 2, 3]*3的值为______________________。
10.判断对错:假设random模块已导入,那么表达式random.sample(range(10), 20)的作用是生成20个不重复的整数。
11.判断对错:已知x和y是两个等长的整数列表,那么表达式sum((i*j for i, j in zip(x, y)))的作用是计算这两个列表所表示的向量的内积。
12.判断对错:表达式(i**2 for i in range(100))的结果是个元组。
13.编写程序,让用户在键盘上输入一个自然数n,然后在区间[1, 5n]上随机生成n个不重复的自然数,输出这些自然数,然后继续编写代码对这些自然数进行处理,只保留所有偶数,并输出这些偶数。
14.编写程序,生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列,并输出结果。
15.编写程序,让用户在键盘上输入一个包含若干整数的列表,输出翻转后的列表。
16.阿凡提与国王比赛下棋,国王说要是自己输了的话阿凡提想要什么他都可以拿得出来。阿凡提说那就要点米吧,棋盘一共64个小格子,在第一个格子里放1粒米,第二个格子里放2粒米,第三个格子里放4粒米,第四个格子里放8粒米,以此类推,后面每个格子里的米都是前一个格子里的2倍,一直把64个格子都放满。需要多少粒米呢?要求使用列表推导式和内置函数进行计算。