繁体   English   中英

如何创建列表列表

[英]how to create a list of lists

我的 Python 代码每次循环时都会生成一个列表:

list = np.genfromtxt('temp.txt', usecols=3, dtype=[('floatname','float')], skip_header=1)

但我想保存每一个 - 我需要一个列表,对吗?

所以我试过:

list[i] = np.genfromtxt('temp.txt', usecols=3, dtype=[('floatname','float')], skip_header=1)

但是 Python 现在告诉我没有定义“列表”。 我不确定我是如何定义它的。 另外,列表列表与数组相同吗??

谢谢!

您想创建一个空列表,然后将创建的列表附加到它。 这将为您提供列表列表。 例子:

>>> l = []
>>> l.append([1,2,3])
>>> l.append([4,5,6])
>>> l
[[1, 2, 3], [4, 5, 6]]

使用 append 方法,例如:

lst = []
line = np.genfromtxt('temp.txt', usecols=3, dtype=[('floatname','float')], skip_header=1)
lst.append(line)

在循环之前创建您的列表,否则它将在每个循环中创建。

>>> list1 = []
>>> for i in range(10) :
...   list1.append( range(i,10) )
...
>>> list1
[[0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [1, 2, 3, 4, 5, 6, 7, 8, 9], [2, 3, 4, 5, 6, 7, 8, 9], [3, 4, 5, 6, 7, 8, 9], [4, 5, 6, 7, 8, 9], [5, 6, 7, 8, 9], [6, 7, 8, 9], [7, 8, 9], [8, 9], [9]]

首先不要使用list作为变量名——这是一个内置函数。

我不是很清楚你在问什么(多一点上下文会有所帮助),但也许这会有所帮助-

my_list = []
my_list.append(np.genfromtxt('temp.txt', usecols=3, dtype=[('floatname','float')], skip_header=1))
my_list.append(np.genfromtxt('temp2.txt', usecols=3, dtype=[('floatname','float')], skip_header=1))

这将创建一个名为my_list的列表(python 中的一种可变数组np.getfromtext() ,并在前 2 个索引中使用np.getfromtext()方法的输出。

第一个可以用my_list[0]引用,第二个可以用my_list[1]引用

今天刚遇到同样的问题...

为了创建列表列表,您首先必须将数据、数组或其他类型的变量存储到列表中。 然后,创建一个新的空列表并将您刚刚创建的列表附加到它。 最后你应该得到一个列表列表:

list_1=data_1.tolist()
list_2=data_2.tolist()
listoflists = []
listoflists.append(list_1)
listoflists.append(list_2)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM