Pythonのinput関数は、ユーザーからの入力(文字や数字)を取得するための関数です。
このinput関数を使うことによって、対話的なプログラムが作れます。
ここでは、input関数の使い方や、文字列型から数値型として取得する方法について解説します。
input関数とは
input関数とは、ユーザーがキーボードに入力したデータを取得するための関数で、
テキストを出力するprint関数とは、真逆の関数です。
ちなみにprint関数は標準出力、input関数は標準入力と呼ばれ、どちらも使用頻度が高いです。
(print関数については以下を参照願います。こちら)
ちなみにprint関数は標準出力、input関数は標準入力と呼ばれ、どちらも使用頻度が高いです。
print関数については以下を参照願います。
参考記事:Python:print関数の使い方(出力・結合・改行防止等)
input()関数の基本
REPLを使ってinput(“お名前を教えて→”)とだけ入力してみます。
>>> input("お名前を教えて→")
お名前を教えて→
すると、「お名前を教えて→」が表示され入力待ちの画面になります。
そこで、あなたの名前「曙太郎」と入力してみましょう。
>>> input("お名前を教えて→")
お名前を教えて→曙太郎
'曙太郎'
あなたが入力した曙太郎が表示されます。
inputを変数に代入して使用する方法
input関数は変数に代入できます。
記述方法
変数 = input('文字列')
実際のコード
>>> name = input("お名前を教えて→")
お名前を教えて→曙太郎
>>> print(name)
曙太郎
python3のinput()関数は文字列です。
python3のinput()関数は数値を入力しても文字列(str)として扱われます。
REPLを使ってinput()に数値を入れて型を調べる
>>> number = input()
1
>>> print(type(number))
<class 'str'>
「1」を入力し、型を調べるとstr(文字列)であることが分かります。
ちなみに型を調べる時にはtype関数を使います。
>>> number + number
'11'
当然、文字列ですから計算(足し算)させても、文字列を結合するだけです。
input()関数に入力された値を数値として扱いたい場合
入力されたデータをもとに計算をしたい時は、入力した数値を文字列ではなく数値として扱ってほしいと思います。
そんな時には、int関数とfloat関数で型を変換すれば数値として計算も可能となります。
>>> number = int(input())
1
>>> print(type(number))
<class 'int'>
>>> number + number
2
ちゃんとint型に変換され「1+1」も無事計算されてます。