1

言葉遣いの悪い質問で申し訳ありませんが、基本的に次の質問があるかどうかを尋ねています。

for i in range(0,10):

i = 0前の時点で設定する必要がありますか、それとも for ループが設定されi = 0ますか?

私は主にCを使用してPythonに慣れていません.Cでは、forループの一部が常に設定されていましたi = 0(または何でも)。

4

4 に答える 4

8

Pythonのループは、他の言語 forと似ています。10 を除く、0 から 10 までの数値のリストを定義します。for ループは、リスト内の各値を連続して設定します。したがって、事前に定義または初期化する必要はありません。foreachrange (0, 10)ii

于 2013-04-03T15:50:55.167 に答える
4

iいいえ、事前に何も設定する必要はありません。

Python では、変数を事前に宣言する必要はありません。ループは、ループの各反復でtoforから次の値を割り当てるだけです。range()i

C ではインデックスを配列に生成するためにループが必要でしたが、Python では通常、シーケンスを直接forループするだけです。

for element in somelist:
    # do something with element

それよりも

for i in range(len(somelist)):
    element = somelist[i]
于 2013-04-03T15:50:29.653 に答える
2

enumerate()単純に for count ループを使用できます。

>>> for i,c in enumerate('abcde') :
...  print i,c
... 
0 a
1 b
2 c
3 d
4 e
于 2013-04-03T15:53:10.617 に答える
1

for は、期待どおりに少し異なる動作をします。変数ではなく、いわゆる「イテレータ」を直接「反復」します。反復または生成をサポートするオブジェクトまたは関数を取得した場合は、for ステートメントを使用できます。

Range() は、実際には for ステートメントが取る一連の数値を返しています。これらの数値ごとに本体を実行します。

于 2013-04-03T15:57:17.360 に答える