Joe*_*ger 0 python arrays dictionary append
您好,非常感谢您的帮助!
我确信这是一个愚蠢的问题,但我正在尝试用数组中的元素附加一个字典值。现在我只能让它将整个元素数组作为一个条目而不是单独的值加载。对不起,如果我没有很好地解释这一点。下面是一个例子:
Array = [4,5,6]
dictionary {'index'} = [1,2,3]
Run Code Online (Sandbox Code Playgroud)
这是我正在做的事情,这是错误的
dictionary['index'].append(array)
Run Code Online (Sandbox Code Playgroud)
这是错误的,因为如果我查询字典 ['index'][1] 中有多少个元素,它会返回 1 而不是 3。看这里:
print range(len(dictionary['index'][0]))
Run Code Online (Sandbox Code Playgroud)
答案是 3,即 1 2 和 3。但是!
print range(len(dictionary['index'][1]))
Run Code Online (Sandbox Code Playgroud)
答案是 1, [4,5,6]。我一定是错误地加载了数组。有谁知道我做错了什么?谢谢!
如果要将整个列表附加到现有列表,只需使用extend():
a = [4,5,6]
d = {'index': [1,2,3]}
d['index'].extend(a)
Run Code Online (Sandbox Code Playgroud)
输出:
{'index': [1, 2, 3, 4, 5, 6]}
Run Code Online (Sandbox Code Playgroud)
如果您想最终得到一个包含两个列表 [1,2,3] 和 [4,5,6] 的列表,那么您应该考虑最初创建字典值的方式。你可以做:
d['index'] = [1,2,3]
d['index'] = [d['index']]
d['index'].append([4,5,6])
Run Code Online (Sandbox Code Playgroud)
输出:
{'index': [[1, 2, 3], [4, 5, 6]]}
Run Code Online (Sandbox Code Playgroud)