0

我尝试从 raw_input 填充数组/列表,但它不起作用我想不出另一种方法:

while a != arraycount:
            x = str(raw_input('Please enter file %s to read from :  '%(a)))
            array1[a] = x
            a += 1

我必须预先填写 aray/list 吗?

编辑: a 是数组空间的计数器/它应该去的地方。arraycount 是必须填充的数组数量。

4

2 回答 2

2

您可以在此处使用 list-comp:

a = [raw_input('Please enter: ') for blah in xrange(array_count)]
于 2013-07-20T21:11:41.947 回答
1

既然你看起来不那么高级,那么使用一个简单的 for 循环怎么样:

my_array = []
for i in xrange(number_of_times):
    my_array.append(raw_input('Input: '))

print my_array  # Shows you the results

我刚刚所做的是 Jon Clements 刚刚向您展示的内容,而没有使用 Python 的高级列表理解。这只是一个班轮在后台所做的。当您学习使用 Python 做其他事情时,尽早学习列表理解将有很大帮助。

要迭代,您可以这样做:

for var in my_array:
   # do something with var, which is a member of my_array.
于 2013-07-20T21:15:02.400 回答