由于在列表的任何位置添加新项都会更新列表,因此以下使用旧项将新项添加到列表字典的形式不起作用:
>>> d = {1: [1]}
>>> d[2] = d[1].append(3)
>>> d
{1: [1, 3], 2: None}
我写了一些麻烦的代码来解决这个问题。这个问题怎么办?你知道吗
>>> d = {1: [1], 2:[1, 3]}
>>> # add a new item for each item where k*=3 and 5 is appended to d[k]
Tags:
在dict中得到2的
None
的原因是append
是一个返回None
的就地操作。你知道吗如果要建立新列表,可以尝试:
但我想不出一个好的理由来这么做。如果您在语义上所做的只是构建一个包含索引的列表,那么您可以这样做,只要记住Python从0开始计算索引和切片:
相关问题 更多 >
编程相关推荐