whileとforの使い分けを説明します。
下記の何れかに当てはまる時はwhile文を使用します。
1. ループ条件がi < 定数で表現できない時
2. ループ条件で使用する変数を変更したい時
言い換えると下記の様なC言語のfor文で表現できない時は、while文を使います。
for(int i = 初期値; i < 定数; i += ループ毎の増分)
{
任意の処理(ただし、iの値は変更しない)
}
cのforとpythonのforの対応は、kevの回答が参考になります。
How do I use a C-style for loop in Python? – Stack Overflow
1. ループ条件がi < 定数で表現できない時
def judgePrime(n): i = 2 #ループの条件がi < 定数ではない時は、while文を使用します。 while(i * i <= n): if n % i == 0: return False i += 1 return True x = int(input()) target = x #ループの条件に関数の結果を含む場合は、while文を使用します。 while(judgePrime(target) == False): target += 1 print(target)
2. ループ条件で使用する変数を変更したい時
下記の様に、ループの条件で使用する変数iを処理中に変更したい時はwhile文を使用します。
l = [val for val in range(6)] i = 0 while i < 6: if i == 2: i = 3 print(i) i += 1 """ 出力は下記です。 0 1 3 4 5 """
rob mayoffの回答が参考になります。
How do I use a C-style for loop in Python? – Stack Overflow
コメント