GW企画。 ついに平成も最後の日ですね。
前回はこちら。 ultrabirdtech.hatenablog.com
今回は制御構文。
プログラムを扱うにおいて、本当に面白くなるのはここから。 2日目、3日目はデータ型についてまとめましたが、制御構文になるとやっとプログラミングっぽいことできますね。
条件分岐(if, elif, else)
if
, elif
,else
は与えられた条件に対してTrue(真)かFalse(偽)かをチェックするPythonの構文。
意味 | 演算子 |
---|---|
等しい | == |
等しくない | != |
より小さい | < |
以下 | <= |
より大きい | > |
以上 | >= |
要素に存在する | in |
例1:お酒を飲んでいい年齢かを判断するプログラム
お酒は20歳からなので、与えられた年齢(age
)が20かどうかを判断するプログラムになる。
if 20 <= age: print('OK') else: print('NG')
また、複数の条件をand
, or
などを利用して、同時に比較することができる。
x < 5 and x < 10 # 6 から 9までの数字ならTrue
繰り返し構文(for, while)
プログラムをしていると、同じ処理を複数回行いたいときがある。
その際はfor
文や、while
文を利用することになる。
for文
リストやハッシュの要素を一つずつ取り出して処理をする。
>>> fruits = ['apple', 'orange', 'strawberry', 'grape'] >>> for f in frutis: >>> print(f) ===出力結果=== apple orange strawberry grape
while文
要素がTrue
である間ループし続ける。
count = 1 while count <= 5: print(count) count += 1
break文、continue文
繰り返しの中で条件分岐を行い、条件によって処理を抜けたい場合や処理を途中でやめて次のイテレーションに処理を移りたい場合がある。
それらを実現してくれるのがbreak
文とcontinue
文。
count = 1 while True: # count の値が100以上になったら処理を抜ける if count > 100 break; count +=1
Try
1. フィボナッチ数列を出力するPythonファイルを作成してください
フィボナッチ数列とは
実行結果
$ python fibonacci.py 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
2. fizzbuzzを出力するファイルを作成してください
100までの数値の中で、3で割り切れる場合はfizz
、5で割り切れる場合はbuzz
、両方で割り切れる場合はfizzbuzz
と出力するプログラムを作成してください。
実行結果
$ python fizzbuzz.py 3:fizz 5:buzz 6:fizz 9:fizz 10:buzz 12:fizz 15:fizzbuzz 18:fizz ・ ・ ・ 96:fizz 99:fizz
3. zundokoを出力するファイルを作成してください。
ズン
とドコ
をランダムに出力し、出力がズンズンズンズンドコ
になったら、KIYOSHI
と出力するプログラム
実行結果
$ python zundoko.py ズン ズン ズン ドコ ズン ズン ズン ズン ドコ ズンズンズンズンドコ KI・YO・SHI
※ズンとドコの表示回数は実行する度にランダム。
まとめ
Pythonにはswitch
とかcase
に当たる制御構文がないのには驚いた。
次回はこちら