Python for ループ文

Pythonのforループは、リストや文字列など、任意のシーケンスの項目を反復処理できます。

構文:

forループの構文形式は次のとおりです:

for iterating_var in sequence:
   statements(s)

フローチャート:

実例:

実例

#!/usr/bin/python # -*- coding: UTF-8 -*- for letter in 'Python': # 最初の実例 print("現在の文字: %s" % letter) fruits = ['banana', 'apple', 'mango'] for fruit in fruits: # 2番目の実例 print ('現在の果物: %s'% fruit) print ("Good bye!")

試してみる »

上記の実例の出力結果:

当前字母: P
当前字母: y
当前字母: t
当前字母: h
当前字母: o
当前字母: n
当前水果: banana
当前水果: apple
当前水果: mango
Good bye!


シーケンスのインデックスによる反復

ループを実行するもう一つの反復方法はインデックスを使用することです。次の実例の通りです:

実例

#!/usr/bin/python # -*- coding: UTF-8 -*- fruits = ['banana', 'apple', 'mango'] for index in range(len(fruits)): print ('現在の果物 : %s' % fruits[index]) print ("Good bye!")

上記の実例の出力結果:

当前水果 : banana
当前水果 : apple
当前水果 : mango
Good bye!

上記の実例では、組み込み関数 len() と range() を使用しました。関数 len() はリストの長さ、つまり要素の数を返します。range は一連の数を返します。



ループでの else 文の使用

Pythonでは、for … else は次のような意味です。for 内の文は通常と違いはありません。else 内の文は、ループが正常に実行完了した場合(つまりforがbreakによって中断されていない場合)に実行されます。while … else も同様です。

実例

#!/usr/bin/python # -*- coding: UTF-8 -*- for num in range(10,20): # 10 から 20 (含まない) までの数字を反復処理 for i in range(2,num): # 因子に基づいて反復処理 if num%i == 0: # 最初の因子を決定 j=num/i # 2番目の因子を計算 print ('%d は %d * %d に等しい' % (num,i,j)) break 現在のループを抜ける else: # ループの else 部分 print ('%d は素数です' % num)

試してみる »

上記の実例の出力結果:

10 等于 2 * 5
11 是一个质数
12 等于 2 * 6
13 是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17 是一个质数
18 等于 2 * 9
19 是一个质数

その他の実例:Pythonで菱形、三角形、長方形を出力

その他の拡張