根据用户的输入创建N维动态数组?

时间:2013-05-22 02:32:53

标签: python arrays input numpy

ASCII文件有61列,使用 readlines()从中读取列。用户可以选择根据他/她选择的列数来指定用于创建n维数组的列数。

我想创建一个动态的n维数组,例如:

from numpy import *
FILE = open('test.txt','rb')

Choice = float(raw_input('How many columns do you want to use: \t'))

A = [[],[],[],...]  # N-dimensional array (rows = 486, columns = N)

这样A的维度基于用户选择“选择”。 'N'可以在1到61之间变化。我怎么能这样做呢?

-Thanks!

2 个答案:

答案 0 :(得分:3)

>>> rows = 486
>>> columns = 5
>>> A = [[None] * columns for x in xrange(rows)]
>>> len(A)
486
>>> len(A[0])
5

答案 1 :(得分:0)

rows = int(raw_input("Number rows: "))
cols = int(raw_input("Number cols: "))

a = np.zeros([rows, cols])

输出:#rows = 3,cols = 2

print a
array([[ 0.,  0.],
       [ 0.,  0.],
       [ 0.,  0.]])

出于您的目的设置rows = 1

a = np.zeros([1, cols])