書式 while文 条件が満たされている間繰り返す
while 条件式:ステートメント1ステートメント2ステートメント3
P112
●countの値が5以上になるまで処理を繰り返す
xcount = 1while count<=5 :print(count)count += 1
p113
xfrom random import randinttickets = 5point = 0# ticketsが正の間は繰り返すwhile tickets>0 :v = randint(1, 20)print(v)point += vtickets -= 1 # チケットを1枚減らす# 出力print("-" * 3)print(point)
=============================================
繰り返しを中断して終了する break
p114
xfrom random import randint# 値が見つかるまで無限ループするwhile True :a = randint(1, 13)b = randint(1, 13)c = randint(1, 13)# 合計が21ならばブレイクするif (a+b+c) == 21:break # ブレイクするprint(a, b, c)
p115
xfrom random import randintmiss = 0 # 間違えた数correct = 0 # 正解数print("問題!3回間違えたら終了。qで止める")while miss<3 :a = randint(1, 100)b = randint(1, 100)ans = a + b# 問題を出題し、キーボードからの入力待ちにするquestion = f"{a}+{b}は?"value = input(question)# qと入力されたら中断するif value == "q":break # ブレイクする# 解答が正解かどうか判定するif value == str(ans) :correct += 1print("正解です!")else :miss += 1print("間違い!", "×" * miss) # 間違いの数だけ×を表示するprint("-" * 20)print("正解:", correct)print( "間違い:", miss)
============================================
繰り返しをスキップする continue
p118
f
xfrom random import randintnumbers = [] # 空のリスト# numbersの値が10個になるまで繰り返すwhile len(numbers)<10 :n = randint(0, 100) # 0~100の乱数if n in numbers :# nがnumbersに含まれていたらスキップするcontinue# numbersにnを追加するnumbers.append(n)print(numbers)
======================================== p118
繰り返した後で実行する while ~ else
p119
書式 else ブロックがあるwhile文
while 条件式 : ステートメント1 ステートメント2 ステートメント3 else : ステートメント1 ステートメント2 ステートメント3
p120
xfrom random import randintnumbers = [] # 空のリスト# numbersの値が10個になるまで繰り返すwhile len(numbers)<10 :n = randint(-10, 90) # -10~90の乱数if n<0 :# nがマイナスならブレイクするprint("中断されました")breakif n in numbers :# nがnumbersに含まれていたらスキップするcontinue# numbersにnを追加するnumbers.append(n)else:print(numbers)
==============================================