Pythonのinput関数の使い方(標準入力)

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 + 50150ですが、'100' + '50''10050'というアウトプットになってしまいます。input()関数で取得した数字は文字列型であることを忘れずに、必要であれば適切な型に変換するようにしましょう。