- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
dict 方法 {}.fromkeys()
接受一个可迭代的字符串,它将被转换为字典键。默认值将默认为 None
。例如:
d = {}.fromkeys(['loss', 'val_loss'])
{'loss': None, 'val_loss': None}
可选的第二个参数是所有这些值将采用的默认值:
d = {}.fromkeys(['loss', 'val_loss'], [])
{'loss': [], 'val_loss': []}
我知道你可以像这样初始化一个空的字典。变得更复杂的是默认值指向同一个对象。
[id(val) for val in d.values()]
[140711273848032, 140711273848032]
如果你要追加一个列表,它会追加这个字典的所有值。因此,您需要将值重新分配给新对象,以便将字典值视为单独的对象:
d['loss'] = list([0.2, 0.4])
如果不这样做,您将同时更改所有字典值。
我的问题:可选默认值的用途是什么?
如我所见,无论如何你都需要重新分配这个默认值,除非你想用不同的字典键操作同一个对象。我想不出一个诚实的理由为一个对象设置多个字典键。
最佳答案
这可以工作(字典理解)
keys = {'A', 'B', 'C'}
int_lst = [9]
a_dict = { key : list(int_lst) for key in keys }
print(a_dict)
a_dict['B'].append(12)
print(a_dict)
关于python - 如果 dict().fromkeys() 都指向同一个对象,那么默认值参数有什么用呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62152939/
我已将以下 xml 属性存储到 HashMap extraParams = new HashMap() 基本上我想在 kets sourceAttrStart 之间获取 hashmap 的
本文实例讲述了python使用dict.fromkeys()快速生成一个字典。分享给大家供大家参考,具体如下: ?
我需要将 test_input 中的数据与 classes 进行分组,即,如果 test_input 中的 2 个值相同,则它们应该具有相同的类. 我尝试创建一个字典,但不知道如何进行类管理: @py
我尝试创建满足我需要的完美字典(包含带有值和列表的字典的字典)。然而,我似乎一遍又一遍地分配相同的引用。 brands = ['val1', 'val2', 'val3'] infoBrands =
这个问题已经有答案了: dict.fromkeys all point to same list [duplicate] How do I create a unique value for each
我写了下面的函数。它在不应该的时候返回一个空字典。该代码在没有功能的命令行上运行。但是我看不出这个函数有什么问题,所以我不得不求助于你们的集体智慧。 def enter_users_into_dict
我们可以从键列表中初始化一个新的字典实例: >>> dict.fromkeys(['spam', 'spam', 'potato']) {'potato': None, 'spam': None} q
我有以下字典: ref_range = range(0,100) aas = list("ACDEFGHIKLMNPQRSTVWXY*") new_dict = {} new_dict = new_d
为什么 dict.fromkeys 的函数描述符功能不同于其他正常功能。 首先你无法访问__get__像这样:dict.fromkeys.__get__你必须从 __dict__ 得到它. ( dic
这是一个例子, my_keys=['hi','hello'] d=dict.fromkeys(my_keys,[]) print d d['hello'].append([1,]) print d['
我有一个继承自collections.Counter的Python类: class Analyzer(collections.Counter): pass 当我在这段代码上使用 pylint 时
代码如下: from collections import defaultdict result = defaultdict.fromkeys(['a','b','c'], list) result[
def parse_urls(weeks_urls): for wkey in weeks_urls.keys(): results=urllib2.urlopen(weeks
首先,我是 Python 的新手,所以如果我忽略了什么,我深表歉意,但我想使用 dict.fromkeys(或类似的东西)来创建列表字典,其中的键在另一个列表中提供。我正在执行一些计时测试,我希望键成
这个问题在这里已经有了答案: How can I initialize a dictionary of distinct empty lists in Python? (7 个回答) 关闭2年前。 我
这个问题在这里已经有了答案: How can I initialize a dictionary of distinct empty lists in Python? (7 个回答) 关闭 10 个月
dict 方法 {}.fromkeys() 接受一个可迭代的字符串,它将被转换为字典键。默认值将默认为 None。例如: d = {}.fromkeys(['loss', 'val_loss']) {
在 Python 中,您可以使用字典作为 dict.fromkeys() 的第一个参数,例如: In [1]: d = {'a': 1, 'b': 2} In [2]: dict.fromkeys(d
基于Python2.7字典的键必须是不可变的和可哈希的吗?在列表实现中,我发现 __hash__=None,这意味着它不可哈希。 我们可以使用 fromkeys 来创建这样的字典: d={}.from
这个问题在这里已经有了答案: How do I initialize a dictionary of empty lists in Python? (7 个答案) 关闭去年。 我怎样才能绕过这个限制
我是一名优秀的程序员,十分优秀!