キーボードからの入力値を使用する
次回から制御文と呼ばれる処理について解説しますが、その前に準備としてキーボードから入力した値を変数に格納する方法について解説します。
まずは以下のPythonスクリプトを実行してみてください。
print("適当なキーを入力してください") x = input('>> ') print(x + "が入力されました。")
このPythonスクリプトを実行すると、コマンドライン上に「適当なキーを入力してください」というメッセージが表示され、その次に入力待ちの>>の記号が表示されます。次に値を入力してエンターキーを押してください。
例えば、abcを入力すると以下のように入力内容がメッセージに表示されます。
適当なキーを入力してください >> abc abcが入力されました。
変数xにキーボードから入力した値abcが格納されているわけです。
数値の入力
ここで注意が必要なのが、入力された値は「文字列である」という点です。入力した値を数値として計算したい場合は少し工夫が必要です。
具体的には数字の文字列から整数に変換させるint関数というものを使用することになります。
int("数字の文字列")
例えば、"100"という文字列は文字列なので計算できませんが、int関数で整数に変換することにより計算することが可能となります。
s = "100" x = int(s) y = x + 10 print(y)
2022/06 上コードにてx = int(x)となっておりましたが誤りで、x = int(s)となります。ご指摘くださった方ありがとうございます。
実行すると、100 + 10の計算結果、110が表示されます。
以下のコードは2つの数字を入力させて、入力された数値を足し算し、結果を表示しています。
print("2数の和を求めます。") print("1つめの数値をを入力してください") x = input('>> ') print("2つめの数値をを入力してください") y = input('>> ') x2 = int(x) y2 = int(y) z = x2 + y2 print("2つの数の和:", z)
文字列x, yを数値に変換したものをx2, y2に格納しています。
ただし、このコードは数字以外を入力するとエラーが発生します。対応方法については本講座では解説しませんが、興味がある方は入門編を学習してください。
演習
演習1
3つの数値を入力させ、和を表示するプログラムを作成してください。
回答例
print("3数の和を求めます。") print("1つめの数値をを入力してください") x = input('>> ') print("2つめの数値をを入力してください") y = input('>> ') print("3つめの数値をを入力してください") z = input('>> ') x2 = int(x) y2 = int(y) z2 = int(z) w = x2 + y2 + z2 print("3つの数の和:", w)