Python 考试练习题4

1. 将元组 (1,2,3) 和集合 {4,5,6} 合并成一个列表。

tup=(1,2,3)
set={4,5,6}
list=list(tup)+list(set)
print(list)

 

 

2. 在列表 [1,2,3,4,5,6] 首尾分别添加整型元素 7 和 0。

#方法1
list=[1,2,3,4,5,6]
list.insert(0,7)
#list.append(0)  这两种也可以
#list.insert(len(list),0)
list.extend([0])
print(list)

#方法2
list2=[1,2,3,4,5,6]
temp=[7]+list2+[0]
print(temp)

 

 

3. 反转列表 [0,1,2,3,4,5,6,7] 。

list=[0,1,2,3,4,5,6,7]
temp=reversed(list)
for i in temp:
    print(i,end=" ")

print()

list2=[0,1,2,3,4,5,6,7]
list2.reverse()
print(list2)

 

 

4. 反转列表 [0,1,2,3,4,5,6,7] 后给出中元素 5 的索引号。

注意,对于列表,没有find方法,字符串才有。

list2=[0,1,2,3,4,5,6,7]
list2.reverse()
print(list2)
i=list2.index(5)
print(i)

 

5. 从列表 [True,1,0,'x',None,'x',False,2,True]中删除元素'x'。

list=[True,1,0,'x',None,'x',False,2,True]
list.remove('x')
print(list)

 

 

6. 从列表 [True,1,0,'x',None,'x',False,2,True] 中删除索引号为4的元素。

list=[True,1,0,'x',None,'x',False,2,True]
list.pop(4)
print(list)

 

7. 删除列表中索引号为奇数(或偶数)的元素。

list1=[0,1,2,3,4,5,6,7,8,9]
list2=list1[0:len(list1):2]
print(list2)

list1=[0,1,2,3,4,5,6,7,8,9]
list2=[]
for i in range(0,len(list1),2):
    list2.append(list1[i])

print(list2)

 

 

 

8. 清空列表中的所有元素。

list1=[0,1,2,3,4,5,6,7,8,9]
print(list1)
list1.clear()
print(list1)

 

 

9. 对列表 [3,0,8,5,7] 分别做升序和降序排列。

list=[3,0,8,5,7]
print(list)
list.sort()
print(list)
list.sort(reverse=True)
print(list)

11. 将列表 [3,0,8,5,7] 中大于 5 元素置为1,其余元素置为0。

list= [3,0,8,5,7]
for i in range(0,len(list)):
    if(list[i]>5):
        list[i]=1
    else:
        list[i]=0
print(list)

list= [3,0,8,5,7]
for i,j in enumerate(list):
    if j>5:
        list[i]=1
    else:
        list[i]=0
print(list)

 

 

 

12. 遍历列表 ['x','y','z'],打印每一个元素及其对应的索引号。

list=  ['x','y','z']
for i,j in enumerate(list):
    print(i,j)

13. 将列表 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 拆分为奇数组和偶数组两个列表。

lst=[0,1,2,3,4,5,6,7,8,9]
leven=lst[::2]
lodd=lst[1::2]

print(leven)
print(lodd)

14. 分别根据每一行的首元素和尾元素大小对二维列表 [[6, 5], [3, 7], [2, 8]] 排序。

lst=[[6,5],[3,7],[2,8]]

lst.sort()

lst.sort(key=lambda x:x[-1],reverse=True)
print(lst)

15. 从列表 [1,4,7,2,5,8] 索引为3的位置开始,依次插入列表 ['x','y','z'] 的所有元素。

list= [1,4,7,2,5,8]
list=list[:4]+ ['x','y','z'] +list[4:]
print(list)

  

16. 快速生成由 [5,50) 区间内的整数组成的列表。

lst=list(range(5,50))
print(lst)

17. 若 a = [1,2,3],令 b = a,执行 b[0] = 9, a[0]亦被改变。为何?如何避免?

改为b=a.copy()或者b=a[:]

a=[1,2,3]
b=a
b[0]=9
print(a)
print(b)

 

 

a=[1,2,3]
b=a[:]
b[0]=9
print(a)
print(b)

 

 

a=[1,2,3]
b=a.copy()
b[0]=9
print(a)
print(b)

 

 

18. 将列表 ['x','y','z'] 和 [1,2,3] 转成 [('x',1),('y',2),('z',3)] 的形式。

lst=list(zip(['x','y','z'],[1,2,3])) #打包为元组的列表
print(lst)

19. 以列表形式返回字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中所有的键。

s1={'Alice':20,'Beth':18,'Cecil':21}

print(list(s1.keys()))

20. 以列表形式返回字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中所有的值。

s1={'Alice':20,'Beth':18,'Cecil':21}

print(list(s1.values()))

21. 以列表形式返回字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中所有键值对组成的元组。

s1={'Alice':20,'Beth':18,'Cecil':21}

print(list(s1.items()))

22. 向字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中追加 'David':19 键值对,更新Cecil的值为17。

map={'Alice': 20, 'Beth': 18, 'Cecil': 21}
map['David']=19
map['Cecil']=17
print(map)

23. 删除字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中的Beth键后,清空该字典。

map={'Alice': 20, 'Beth': 18, 'Cecil': 21}
map.pop('Beth')
print(map)
map.clear()
print(map)

24. 判断 David 和 Alice 是否在字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中。

map={'Alice': 20, 'Beth': 18, 'Cecil': 21}
print('David' in map)
print('Alice' in map)

25. 遍历字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21},打印键值对。

map= {'Alice': 20, 'Beth': 18, 'Cecil': 21}
for i,j in map.items():
    print(i,j)

26. 若 a = dict(),令 b = a,执行 b.update({'x':1}), a亦被改变。为何?如何避免?

    改为b=a.copy()

a=dict()
b=a
b.update({'x':1})
print(a)
print(b)

27. 以列表 ['A','B','C','D','E','F','G','H'] 中的每一个元素为键,默认值都是0,创建一个字典。

map={}.fromkeys(['A','B','C','D','E','F','G','H'] ,0)
print(map)

28. 将二维结构 [['a',1],['b',2]] 和 (('x',3),('y',4)) 转成字典。

map={}
list= [['a',1],['b',2]]
for i in range(0,len(list)):
    map[list[i][0]]=list[i][1]
print(map)

29. 将元组 (1,2) 和 (3,4) 合并成一个元组。

tup1=(1,2)
tup2=(3,4)
tup3=tup1+tup2
print(tup3)

30. 将空间坐标元组 (1,2,3) 的三个元素解包对应到变量 x,y,z。

x,y,z=(1,2,3)
print(x,y,z)


 

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值