Pythonのinput関数の使い方(標準入力)
Pythonの組み込み関数input()について解説します。
input()
関数はPythonの組み込み関数で、ユーザーからの入力を受け付けて文字列として取得する役割があります。
プログラム中にユーザーの入力を受け付けて処理を実行したり、競技プログラミングにおいて入力データを取得する場合などに利用されます。
input()関数の基本的な使い方
Pythonのinput()
関数は、ユーザーからの入力を受け付けて、入力された文字列を戻り値として返します。また、任意の引数としてprompt
を指定すると、そこで指定された文字列が標準出力として先に書き出されます。
試しに、ターミナルなどのCUIでinput()
関数を使ってみます。
# コマンドラインでinput関数を使う
$ python # pythonの環境に入る
>>> input() # エンターを押すと入力を受け付ける
文字を入力します
'文字を入力します'
>>> name = input("名前を入力してください\n")
名前を入力してください
山田太郎
>>> print(name)
山田太郎
input()
関数は単独で使うと受け付けた入力をそのまま返しますが、変数に代入することで、入力した値を他の場所で利用することができます。上の例では、name
という変数にユーザーから受け付けた入力を代入しています。
input()関数の戻り値は文字列
input()
で受け付けた入力は全て文字列になることに注意してください。int型などの数字として扱いたい場合には、それぞれの型に変換する必要があります。
# inputで入力した値は文字列になる
$ python
>>> num = input()
100
>>> print(num)
100
>>> print(type(num))
<class 'str'>
# 他の型として使いたい場合には変換が必要
>>> num = int(input())
100
>>> print(num)
100
>>> print(type(num))
<class 'int'>
特に文字列型の数字には注意しましょう。
+
や*
などの演算子を文字列に対して利用すると、数字ではなく文字列として処理されるため、数字として処理した場合と異なる結果が出てしまいます。
例えば100 + 50
は150
ですが、'100' + '50'
は'10050'
というアウトプットになってしまいます。input()
関数で取得した数字は文字列型であることを忘れずに、必要であれば適切な型に変換するようにしましょう。