5

値とインデックスが同じ 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)
4

7 に答える 7

6

このようなリストを生成するには range() を使用します

>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(10)[5]
5
于 2013-09-26T03:50:37.580 に答える
2

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
于 2013-09-26T03:50:26.883 に答える
1

を使用でき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
于 2013-09-26T03:52:30.073 に答える