if 文

python にも 条件分岐の定番 if 文はあります。


次のように記載して下さい。
=====================
num = input(‘数字を入れてください。占います!’)

if int(num) > 38:
  print(“大吉だ”)
elif 11<int(num) and int(num) < 39:
  print(“中吉だ”)
else:
  print(“これは 末吉だ”)

=====================

キーボードで何か入力してみると

もし 文字が入力されたら エラーとなります。
入力された値を num に格納し、そのnumをint 型に変換しているが、
数値でないから変換できないからです。


キーボードから入力された値が数値であれば、
その値に応じて 3パターンに表示されます。


もし 入力された値が 39 より大きければ
 大吉だ と表示されます。

if 条件 :
 という書き方はまさにそのように もし 条件が成立てば という意味です。

 行末の : コロン が 他の言語の then とか { の意味です。

if 文の次の行は インデントで右側にずらします。
そうすることで if文成立のときに実行する内容はここだ と視覚的に見易くするルールです。


python の if 文は end if で閉じません。
他のプログラムでは end if で閉じることが多いです。


こういうプログラム間の違いを理解しておくと 頭の切り替えが楽になると思います。

また、他のプログラムでは else if と書くケースでも
python では elif 条件 : だけ です。


elif 11<int(num) and int(num) < 39:
今回の例では
もし 入力された値が 11 から39の間 なら
という意味です。 

変数を含む文字列の表示

今日は変数を含む文字列の表示についてご紹介します。

以下のように .py ファイルに記載してみてください。

========================

import string

name: string = “名前”
age: int = “39”
height: float = “170.5”

print(‘① My name is {}. Age is {}, Height is {}’.format(name,age,height))

print(f’② My name is {name}. Age is {age}, Height is {height}’)

========================

① My name is 名前. Age is 39, Height is 170.5

② My name is 名前. Age is 39, Height is 170.5

と表示されましたか?





①と②は書き方は異なりますが、結果は同じです。

①はC言語風の書き方です。


②の書き方が楽ですね。
print(f’ と f が重要です。
そうすれば、print() の中に{ }くくりの変数名を書けば、即座に反応されるんです。

これは必ず覚えましょう。

キーボード入力3修正

今日のテーマはキーボード入力2が失敗した理由の説明と修正です。

前回と似ていますが、次のように .py ファイルに記載してみてください。

========================

i1:int
i2:int
i1 = input(‘Set Number1 ?’)

i2 = input(‘Set Number2 ?’)
i3 = int(i1) + int(i2)
print(i3)

========================

i1 という変数を 整数型で宣言し、そのi1 に
キーボードで入力された値を格納し、

i2 という変数を 整数型で宣言し、そのi2 に
キーボードで入力された値を格納し、



その値を利用して print しています。

input() が、キーボード入力に関連する python の関数です。


例えば、i1 に5を格納し、i2 に4を格納すると
9 と表示されましたか?

これは算数的に成功ですよね。


前回との違いは、

i3 = int(i1) + int(i2)
print(i3)
の箇所です。


今回は
i3 という変数に  int() 関数を利用して
i1 に入力された値を 明示的に整数に変更し、同様に
i2 に入力された値を 明示的に整数に変更し、
足したものを i3 に格納しました。 つまり、数字と数字の足し算 をきちんと実行したのです。

これに対して、前回は

i1 に入力された値 と i2 に入力された値 を並べて表示した

ので、5と4が順番に表示された のです。



プログラムが思い通りに行かないのは
全部 プログラマーが悪いんです。


思い通りに動くことを確認できるまで プログラミング頑張りましょう