2013-05-03 209 views
0

我正在嘗試做一個for循環。在空列表中引入一個值(p)。我想做一種向量,爲我節省數學運算的所有源值。for Python中的循環創建列表

lista=list() 
for index in len(lista+1): 
lista.append(p) 
index=index+1 
print lista 

THX對您有所幫助

+3

什麼是你所面臨的問題? – prashantsunkari 2013-05-03 23:07:14

+0

而不是自己跟蹤循環迭代,請使用http://docs.python.org/2/library/functions.html#enumerate – bernie 2013-05-03 23:07:55

+0

這裏的循環有什麼意義?你想添加多個值嗎?通過調用'lista.append(p)'完成向列表中添加單個值。 – 2013-05-03 23:16:51

回答

0
lista=list() 
for index in range(len(lista)): 
lista.insert(p) 
index=index+1 
print lista 
1

你應該做的,而不是for index in len(lista+1):

for index in range(len(lista) + 1):要簡化你的代碼,你也可以這樣做:

lista = list() 
[p] * (len(lista) + 1) 
+1

也許你的意思是'範圍內的索引(len(lista)+1)'?每次程序執行操作時, – tom10 2013-05-03 23:11:05

2

如果你只是想插入一個值變成一個空列表,它應該看起來像這樣:

ps = []  # create the empty list 
ps.append(p) # add the value p 

,或者你可能只是這樣做。如果你想插入n次,你可以使用一個for循環這樣可以得到相同的結果ps = [p]

ps = [] 
for i in range(n): 
    ps.append(p) 

或只是這樣做哪些給出了相同的結果ps = n * [p]

+0

p都會有不同的值 – 2013-05-04 00:37:22

+0

在循環中沒有辦法改變p。我們需要更多的上下文信息來幫助你做到這一點。 – Sarien 2013-05-04 12:42:07

2

你可以試試這個:

lista = [i*i for i in range(N)] 
print lista 

或使用:

for i in range(N) 
    lista.append(i*i) 
print lista 
+0

但我不知道數據的數量可能是100或1000.這取決於程序運行的時間。 – 2013-05-04 00:44:33