python列表练习题

  1. 假设你有一个嵌套的列表 nested_lst = [[1, 2], [3, 4], [5, 6]],你想要创建一个新列表,其中包含所有子列表的第一个元素,但不包括子列表本身。你应该使用哪种方法?

    A. [x[0] for x in nested_lst]

    B. [x for x in nested_lst[0]]

    C. nested_lst.pop(0) for _ in nested_lst

    D. [x for sublist in nested_lst for x in sublist[0]]

    【答案】A

  2. 有一个列表 lst = [1, 2, 3, 4, 5],你想要创建一个新列表,其中包含原列表中所有元素的平方,但只保留那些平方后仍为奇数的元素。你应该怎么做?

    A. [x**2 for x in lst if x**2 % 2 == 1]

    B. [x for x in lst if x % 2 == 1 and x**2 in lst]

    C. filter(lambda x: x**2 % 2 == 1, lst)

    D. [x**2 for x in lst if x % 2 == 1]

    【答案】A

  3. 有一个列表 lst = [1, 2, 2, 3, 4, 5, 5, 5],你想要删除列表中所有的重复元素,只保留第一次出现的元素。你应该怎么做?(注意:不使用集合)

    A. lst = [x for i, x in enumerate(lst) if x not in lst[:i]]

    B. lst = list(dict.fromkeys(lst))

    C. lst = [lst[i] for i in range(len(lst)) if lst[i] not in lst[i+1:]]

    D. lst.remove(x) for x in lst[1:] if x in lst[:-1]

    【答案】A

  4. 有一个列表lst = [1, 2, 3, 4, 5],下列选项能将lst变为[5, 4, 3, 2, 1]的有:
    A. lst = lst.sort(reverse=True)
    B. lst = lst[::-1]
    C. sorted(lst, reverse=True)
    D. 上面三个操作都行
    【答案】B

  5. 阅读下面代码:

    lst = [1, 2, 3]
    lst_1 = lst.copy()
    
    lst[1] = "gzh: PyGo学习笔记"
    print(lst, ",", lst_1)
    

    得到的答案是:
    A. [1, 'gzh: PyGo学习笔记', 3] , [1, 'gzh: PyGo学习笔记', 3]
    B. [1, 2, 3] , [1, 2, 3]
    C. [1, 'gzh: PyGo学习笔记', 3] , [1, 2, 3]
    D. [1, 'gzh: PyGo学习笔记', 3] , [1, 'gzh: PyGo学习笔记', 3]
    【答案】C

  6. 阅读下面代码:

    lst = ["关注gzh", 2, 3]
    lst_1 = [lst]
    lst_2 = lst_1.copy()
    
    lst[1] = "PyGo学习笔记"
    lst[2] = "有学习资料领哦!!"
    print("lst_1:", lst_1, "lst_2:", lst_2)
    

    得到的答案是:
    A. lst_1: [['关注gzh', 'PyGo学习笔记', '有学习资料领哦!!']] lst_2: [["关注gzh", 2, 3]]
    B. lst_1: [["关注gzh", 2, 3]] lst_2: [['关注gzh', 'PyGo学习笔记', '有学习资料领哦!!']]
    C. lst_1: [["关注gzh", 2, 3]] lst_2: [["关注gzh", 2, 3]]
    D. lst_1: [['关注gzh', 'PyGo学习笔记', '有学习资料领哦!!']] lst_2: [['关注gzh', 'PyGo学习笔记', '有学习资料领哦!!']]
    【答案】D

  7. 阅读下面代码:

    import copy
    
    lst = [1, 2, 3]
    lst_1 = [lst, 666, lst]
    lst_2 = copy.deepcopy(lst_1)
    
    lst[0] = 999
    print("lst_1:", lst_1, "lst_2:", lst_2)
    

    得到的答案是:
    A. lst_1: [[999, 2, 3], 666, [999, 2, 3]] lst_2: [[1, 2, 3], 666, [1, 2, 3]]
    B. lst_1: [[999, 2, 3], 666, [999, 2, 3]] lst_2: [[999, 2, 3], 666, [999, 2, 3]]
    C. lst_1: [[1, 2, 3], 666, [1, 2, 3]] lst_2: [[1, 2, 3], 666, [1, 2, 3]]
    【答案】A

  8. 下面能够正常生成 1 ~ 100 内奇数的列表的选项有:
    A. [x * 2 + 1 for x in range(50)]
    B. [x for x in range(1, 100, 2)]
    C. [x for x in range(100) if x % 2 == 1]
    D. 以上三个选项都对
    【答案】D

  9. 阅读下面代码:

    lst = [1, 2, 3]
    lst_1 = [4, 5, 6]
    print([[x, y] for x in lst for y in lst_1])
    

    得到的答案是:
    A. [[1, 4], [1, 5], [1, 6], [2, 4], [2, 5], [2, 6], [3, 4], [3, 5], [3, 6]]
    B. [[1, 4], [2, 5], [3, 6]]
    C. [[1, 4], [1, 5], [1, 6]]
    D. [[1, 4], [2, 4], [3, 4]]
    【答案】A

  10. 有列表lst、lst_1:

    lst = [1, 2, 3]
    lst_1 = [4, 5, 6]
    

    如果想通过lst、lst_1列表推导式得到 [[2, 4], [2, 5], [2, 6]],下面做法正确的是:
    A. [[x, y] for x in lst if x % 2 == 0 for y in lst_1]
    B. [[x, y] for x in lst for y in lst_1 if x % 2 == 0]
    C. A、B两种方法都可以
    D. A、B两种方法都不行
    【答案】C

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
下面是三个Python列表练习题的解答: 1. 计算所有偶数的和: ```python list1 = [11, 53, 40, 45, 27, 16, 28, 99] list = [] for x in list1: if x % 2 == 0: list.append(x) print(sum(list)) ``` 这段代码遍历了列表中的每个数字,如果数字是偶数,则将其添加到新的列表中。最后,使用`sum()`函数计算新列表中所有数字的和,并打印出结果。 2. 打印列表中所有的奇数: ```python list1 = [11, 53, 40, 45, 27, 16, 28, 99] list = [] for x in list1: if x % 2 != 0: list.append(x) print(list) ``` 这段代码遍历了列表中的每个数字,如果数字是奇数,则将其添加到新的列表中。最后,打印出新列表中的所有数字。 3. 打印列表中所有能被3整除但是不能被2整除的数: ```python list1 = [11, 53, 40, 45, 27, 16, 28, 99] list = [] for x in list1: if x % 3 == 0 and x % 2 != 0: list.append(x) print(list) ``` 这段代码遍历了列表中的每个数字,如果数字能被3整除且不能被2整除,则将其添加到新的列表中。最后,打印出新列表中的所有数字。 希望这些代码可以帮助你完成Python列表练习题!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【练习题python列表](https://blog.csdn.net/weixin_47005749/article/details/128967352)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

迅风扫秋叶尔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值