Python User Input
1. ユーザー入力 (User Input)
Pythonでは、ユーザー入力(User Input)を受け取ることが可能です。
つまり、プログラムの実行中にユーザーに対して入力を促すことができるということです。
このメソッドは、Python 3.6とPython 2.7で少し異なります。
- Python 3.6では、
input()メソッドを使用します。 - Python 2.7では、
raw_input()メソッドを使用します。
以下の例では、ユーザー名を入力してもらい、そのユーザー名を入力画面に出力します。
2. Python 3.6 における動作
最新のPython 3系(3.6以降)では、input() ファンクション(Function)を使用してユーザーからの入力を取得します。
1.1 コード例
username = input("ユーザー名を入力してください:")
print("ユーザー名は: " + username)このコードを実行すると、コンソール上で入力待ち状態になり、ユーザーが入力してEnterキーを押すと、その値がバリアブル(Variable)に格納されます。
3. Python 2.7 における動作
古いバージョンであるPython 2.7では、raw_input() ファンクション(Function)を使用します。
2.1 コード例
username = raw_input("ユーザー名を入力してください:")
print("ユーザー名は: " + username) 注意: Python 2.7で input() を使用すると、入力された内容をPythonコードとして評価しようとするため、文字列を入力する際には注意が必要です。基本的には raw_input() が推奨されていました。
4. バージョンによる違いのまとめ
Pythonは進化し続けており、入力に関するメソッドも整理されました。
- Python 3.6以降:
input()が標準です。 - Python 2.7:
raw_input()が標準です。
現在の開発環境(Python 3系)では、常に input() を使用するようにしてください。
3.1 入力値のデータ型について
重要な点として、input() ファンクションによって受け取ったデータは、常にストリング(String:文字列型)として扱われます。
数値を入力として受け取り、計算に使用したい場合は、以下のように型変換(キャスト)を行う必要があります。
# ユーザーから数値を受け取る
age = input("年齢を入力してください: ")
# 文字列を整数(Integer)に変換
age_int = int(age)
print(age_int + 1) # 数値として計算可能