-1

誰でもこれを説明できますか?

userData = 10
emptyList = [0] * userData
for i in emptyList: 
    emptyList[i] = userData
    print(emptyList)
    userData -= 1

これは私の考えでは、このコードはそれとは異なることをする必要があります。

私が探しているもの-userDataの値が何であれ、リストemptyListの順序で値をインデックス付けしたいと思います。

これは、セット[10、9、8]などを提供すると思いました...そうではありません..各反復で最初の変数のみを変更します

私は何を間違えましたか?

別の方法で動作させました. userData = 10 emptyList = [] for i in range(userData): emptyList.append(i) userData -= 1 print(emptyList)

しかし、それは私が好きな方法ではありません..そのセットの0が10として出てくる必要があると思います

4

5 に答える 5

2
userData = 10
emptyList = [0] * userData
print emptyList

印刷します

[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

そしてループでは、

for i in emptyList:
    print i,

印刷します

0 0 0 0 0 0 0 0 0 0

したがって、ループのすべての繰り返しで、リストの最初の要素だけを変更しています。あなたが実際にすべきだったのは、

userData = 10
emptyList = [0] * userData

for i in range(len(emptyList)):
    emptyList[i] = userData
    userData -= 1
print emptyList

出力

[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

range開始値、終了値、増分値を受け取り、一連の値を生成する組み込み関数が呼び出されます。その機能を使用すると、これを1行で実行できます

print range(10, 0, -1)  #Python 2
print list(range(10, 0, -1))  #Python 3
于 2013-11-15T03:29:25.213 に答える
0

この線:

for i in emptyList:

ループを提供iし、各値をemptyList順番に設定します。

これらの値はすべてiゼロであるため、常にゼロであることを意味し、最初の値のみが変更されます。

list が必要な場合は[10,9,8,7,6,5,4,3,2,1]、より Pythonic を使用してください。

emptylist = [x for x in range (10, 0, -1)]
于 2013-11-15T03:31:03.773 に答える
0

多分あなたはこのようなコードを読んでいます

userData = 10
emptyList = [0] * userData
for i in range(len(emptyList)): # note range and len here
    emptyList[i] = userData
    print(emptyList)
    userData -= 1

あなたはただ使うことができます

emptyList = range(userData, 0, -1)

それとももっと何かをすることになっていますか?

于 2013-11-15T03:31:50.363 に答える
0

Pythonのforループは、他の言語とは根本的に異なります。これは for eachループに近いものです (つまり、イテラブル内の各要素に対して処理を行います)。

要素のリストを作成する場合はxrange、Python 2.x またはrangePython 3.xに使用します。

emptyList = [i for i in xrange(10, 0, -1)]

emptyList = [i for i in range(10, 0, -1)]
于 2013-11-15T03:32:04.617 に答える
0

あなたは次のようなものが欲しい

for i, j in emptyList:
  emptyList[j] = userData
  userData -= 1

これで、必要な値i(気にしない) と indexの両方を取得jできます。

Python 'for' ループでのインデックスへのアクセスを参照してください。Pythonでループに苦労しているのはあなただけではありません。

于 2013-11-15T03:32:17.670 に答える