創建一個100個整數的列表,其值和索引相同(例如,創建一個100個整數的列表,其值等於它們的索引
mylist[0] = 0, mylist[1] = 1, mylist[2] = 2, ...
這是我的代碼。
x_list=[]
def list_append(x_list):
for i in 100:
x_list.append(i)
return(list_append())
print(x_list)
創建一個100個整數的列表,其值和索引相同(例如,創建一個100個整數的列表,其值等於它們的索引
mylist[0] = 0, mylist[1] = 1, mylist[2] = 2, ...
這是我的代碼。
x_list=[]
def list_append(x_list):
for i in 100:
x_list.append(i)
return(list_append())
print(x_list)
既然誰也意識到你」重新使用Python 3,我會指出你應該做list(range(100))
以獲得想要的行爲。
你怎麼知道OP使用py3?因爲他在'print'之後使用了一個加括號的術語?在'return'後他也這樣做。 – Hyperboreus
@Hyperboreus是的,我正在使用3 – Bob
for i in 100
不會做你認爲的事情。 int
對象不可迭代,所以這不起作用。 for循環嘗試遍歷給定的對象。
如果你想獲得的數字0-100之間的列表,使用range()
:
for i in range(100):
dostuff()
的回答你的問題是相當多range(100)
反正:
>>> range(100)[0]
0
>>> range(100)[64]
64
使用範圍()用於生成這樣的清單
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(10)[5]
5
您可以使用range(100)
,但似乎你很可能希望使從頭列表,所以你可以使用while
:
x_list=[]
i = 0
while i<100:
x_list.append(i)
i += 1
或者你可以做到這一點遞歸:
def list_append(i, L):
L.append(i)
if i==99:
return L
list_append(i+1, L)
x_list = []
list_append(0, x_list)
print x_list
'range(100)'怎麼樣? – BrenBarn
'[_ for _ in range(100)]'。 – Hyperboreus