Pythonでプログラミング(3)
さて、変数に値を代入するのはいいのですが、都度違う値を入れるのに保存したスクリプトをいじるのは面倒というものです。そこで、ユーザーに値を入力させ、それを変数に代入するというように変更します。
具体的には「input」という関数を用います。具体的には、「入力してください:」と表示させて、入力された値を変数valueに代入後、それを表示させるという方法をとります。sample3.pyを以下のようにして保存します。
value=input("入力してください:")
print("入力値は" + value + "です")
これを実行すると、

のようになります。実行するたびに違う値を入力すれば結果も異なります。
もうちょっと工夫して、身長と体重を入力させてBMIを計算させるプログラムを組みましょう。BMIは体重(kg)を身長(m)の2乗で割って計算します。コードは以下のようになります(bmi.py)。
height = input("身長を入力ください(単位:m)==>")
weight = input("体重を入力ください(単位:kg)==>")
bmi=weight/height^2
print("あなたのBMI:"+bmi)
このまま実行すると以下のようなエラーが返ってきます。

これはinputで入力した値は文字列として認識されるため、計算できないと言っているのです。したがって、それぞれの変数を浮動小数点型にします。そこではfloat関数を使用して以下のようにコードを修正します。
height = input("身長を入力ください(単位:m)==>")
weight = input("体重を入力ください(単位:kg)==>")
height=float(height)
weight=float(weight)
bmi=weight/(height*height)
print("あなたのBMI:"+str(bmi))
print文内では文字列しか扱えませんので、変数bmiを文字列に変換する関数strを使っています。