我正在尝试从python 2.7中的几个数组中获取一个数组
我在互联网上发现只需添加两个列表即可完成此操作:
lista = [1,2,3]
listb = [3,4,5]
listc = lista + listb
在我的情况下,我的第一个列表是空的,下一个列表有99个元素。
我的代码看起来像这样
data_complete = []
for i in range(1, numberOfFiles+1):
data = getDataFromFile(i)
data_complete = data_complete + data
最后一行代码不起作用,它返回错误:
data_complete = data_complete + data
ValueError: operands could not be broadcast together with shapes (0) (99)
如果有人能解决这个问题,我会很高兴。
亲切的问候
答案 0 :(得分:2)
如果单个项目
,您可以使用append
方法
data_complete.append (data)
如果extend
本身就是一个列表
data
方法
data_complete.extend (data)
答案 1 :(得分:2)
看起来getDataFromFile
正在返回一个numpy数组,而不是列表。在这种情况下,+
将使用数组的连接例程,与list
相比,它有一些额外的要求(并返回另一个数组)。您可以使用列表extend
方法来解决此问题:
data_complete = []
for i in range(1, numberOfFiles+1):
data = getDataFromFile(i)
data_complete.extend(data)
答案 2 :(得分:0)
只需append
列表中的数据
例如:
evens = []
for i in xrange(10):
if i%2 == 0:
evens.append(i)
在此计划结束时evens
将等于[2,4,6,8]