woshizhangpengp 发表于 2023-7-30 18:19:33

作业40

请教各位大佬
第一个问题,.fromkeys是干嘛的,是创建字典的键嘛?
第二个问题,如果最后一行这些数字是字典的键,那这些键的值是什么?
附上代码:

>>>import random
>>> x =
>>> y =
>>> inter = dict.fromkeys()
>>> list(inter.keys())

isdkz 发表于 2023-7-30 18:19:44

第一个问题: dict.fromkeys是用来创建字典的方法。

dict.fromkeys(iterable, value=None)是一个类方法,它返回一个新的字典,其中包含由iterable中的元素作为键,而所有键对应的值都是value参数指定的值。如果没有提供value参数,则默认为None 。

第二个问题:给定的代码中, list(inter.keys())返回的是从x列表中生成的与y列表共享的元素作为键的字典inter的所有键的列表。

在代码中,通过列表推导式 ,将x列表中同时出现在y列表中的元素提取出来,然后使用dict.fromkeys方法将这些共享元素作为字典inter的键,对应的值则默认为None 。最后, list(inter.keys())将这些键作为列表返回。

所以,给定代码中list(inter.keys())的结果是:


陶远航 发表于 2023-7-30 18:19:45

.fromkeys 是一个字典类方法,它用于创建一个新的字典,其中指定的键对应于给定的值(默认为 None)。它接受一个可迭代对象作为参数,并将其作为键来创建字典。在这种情况下,列表 中的元素被用作字典的键。

对于你提供的代码,在最后一行 list(inter.keys()) 中,我们得到了字典 inter 的所有键所组成的列表。这些键是从列表 x 中筛选出同时存在于列表 y 中的元素。由于 fromkeys 方法将键映射到 None 值,因此这些键在字典中的值都为 None。
如果问题已经解决,请设置最佳答案

Mike_python小 发表于 2023-7-30 18:19:52

问题解答:

- dict.fromkeys(keys, value=None):fromkeys()是字典类(dict)的一个方法,用于创建一个新字典,并将给定的keys作为键,将可选的value作为所有键对应的值。如果不指定value参数,默认将所有键对应的值设置为None。

- 在给定的代码中,使用了列表推导式生成了两个列表x和y,分别包含了随机生成的整数。然后使用dict.fromkeys()方法创建了一个新字典inter,并将x中在y中也存在的元素作为键。由于没有提供value参数,所以所有键对应的值都被设置为None。

最后,通过list(inter.keys())将字典的键转为列表输出。所以最后一行打印出的结果 是字典inter的键。

希望对你有所帮助!如果有其他问题,请随时提问。

球一个最佳答案谢谢啦!这对我非常重要!{:10_254:}{:10_254:}{:10_254:}

tommyyu 发表于 2023-7-30 19:01:17

1. 小甲鱼的【知识点备忘】 -> https://fishc.com.cn/thread-202715-1-4.html

2. 根据【知识点备忘】中的描述,fromkeys 如果找不到第二个参数就会将值都赋值成 None,故第二问的答案为 None.

歌者文明清理员 发表于 2023-7-30 23:33:38

tommyyu 发表于 2023-7-30 19:01
1. 小甲鱼的【知识点备忘】 -> https://fishc.com.cn/thread-202715-1-4.html

2. 根据【知识点备忘】中 ...

{:5_106:}
页: [1]
查看完整版本: 作业40