MST

星途 面试题库

面试题:Python中字典与集合用法的中级问题

假设有一个字典 `my_dict = {'a': [1, 2, 3], 'b': [4, 5]}`, 请编写代码将字典中每个列表的元素翻倍,并将结果保存在一个新的字典中。另外,有一个集合 `my_set = {1, 2, 3, 4}`,如何从这个集合中移除所有偶数元素?
33.7万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
my_dict = {'a': [1, 2, 3], 'b': [4, 5]}
new_dict = {key: [num * 2 for num in value] for key, value in my_dict.items()}

my_set = {1, 2, 3, 4}
my_set = {num for num in my_set if num % 2 != 0}
  1. 翻倍字典中列表元素
    • 使用字典推导式 {key: [num * 2 for num in value] for key, value in my_dict.items()}。这里对于 my_dict 中的每一个键值对,键直接保留,值是一个新的列表,新列表中的元素是原列表元素翻倍后的结果。
  2. 移除集合中的偶数元素
    • 使用集合推导式 {num for num in my_set if num % 2 != 0}。这里创建一个新的集合,只保留原集合 my_set 中满足 num % 2 != 0(即奇数)的元素。