今回はPythonで標準入力を行う方法を解説していきます。
標準入力ができると、外から入力されたデータをプログラム内で利用できます。
Webアプリ開発で必ず使うのでやり方をしっかり覚えてくださいね。
本記事では、標準入力とは何か、Pythonでの標準入力の基本、について解説します。
Pythonの標準入力とは?
標準入力とは、コマンドプロンプトからプログラム内に、データを受け渡すことです。
プログラムを実行するときは、以下のようにコマンドプロンプトに入力しますよね?
python test.py
ここに、半角スペース区切りで入力することで、そのデータを受け渡すことが可能です。
python test.py 1
上記を入力すると「1」というデータがプログラムに渡されます。
渡されたデータは、プログラム内で自由に使うことが可能です。
標準入力を利用することで、外部からのデータをプログラム内で使用することができます。
Pythonのinputとは?
inputとはPythonで標準入力を受け渡すための関数です。
たとえば以下のように利用します。
data = input(“”)
こうすることで、input関数で標準入力したデータを受け取り、変数に格納することが可能です。
基本的にPythonで標準入力を行う場合は、inputだけを使います。
Pythonの標準入力の基本
Pythonの標準入力の基本をみていきましょう。
本記事では以下の項目に分けて解説します。
- 標準入力した文字列を表示する
- 標準入力した数値を表示する
- 標準入力した複数のデータを表示する
1つ1つのやり方を詳しく説明しましょう。
標準入力した文字列を表示する
まずは、一番基本的なinputの使い方をみていきましょう。
標準入力した文字列を、printで表示する方法です。
=====コード例=====
ken = input(“”)
print(“あなたの出身地は” + ken + “ですね”)
=====コード例=====
○実行結果
まず、inputによって標準入力をさせています。
コマンドプロンプトから何でも良いので、【実行結果】のように文字列を入力しましょう。
文字列を入力後は、【Enter】を押すことでプログラムが実行されます。
標準入力したデータは、変数kenに格納されます。
そして、printによって変数が表示されるという流れです。
これが標準入力のもっとも基礎的なものです。
ただこれだとコマンドプロンプトから入力する際、「なんのデータを入れれば良いの?」となってしまいますよね。
そこでどういうデータを入力すべきか、示す方法を紹介しましょう。
=====コード例=====
ken = input(“出身地を入力してください:”)
print(“あなたの出身地は” + ken + “ですね”)
=====コード例=====
○実行結果
inputの中に「出身地を入力してください:」と入力することで、コマンドプロンプト上にその文字が表示されます。
このようにすれば、出身地を入力すれば良いことがわかりますね。
標準入力した数値を表示する
つづいて、文字列ではなく数値を標準入力する方法を解説しましょう。
数値を標準入力する場合、少し注意が必要です。
inputによって受け取ったデータは、数値であっても文字列として認定されてしまうのです。
そのため、inputで受け取った後、数値データに変換しなくてはいけません。
=====コード例=====
num = input(“数値を入力してください:”)
print(1 + int(num))
=====コード例=====
○実行結果
上記では、inputで受け取ったデータを変数numに格納しています。
そのデータをintによって、文字列から数値に変換しているのです。
こうすることで数値として認定され、「1+3」の足し算ができるようになります。
標準入力した複数のデータを表示する
最後に、複数のデータを標準入力する方法をみていきましょう。
今までは、コマンドプロンプトから1つの情報しか入力しませんでしたね。
python test.python 3
複数のデータを渡したい場合は、以下のように半角スペース区切りで入力します。
python test.python 3 8
そして、複数データを処理する場合は、次のようにコードを書きます。
=====コード例=====
num = input(“スペース区切りで数値を2つ入力してください:”).split()
print(num)
print(num[0])
print(num[1])
=====コード例=====
○実行結果
通常通りinputで標準入力したデータを受け取った後、splitによってデータを半角スペースごとに切っています。
「3 8」が「3」と「8」に分かれるようになります。
こうすることでnumはリストになり、num[0]に「3」が、num[1]に「8」が格納されます。
splitを使うことで、複数データも処理することが可能です。
ちなみに、3つの標準入力データを受け取りたい場合も同様です。
複数のデータを受け取りたい場合はよくあるので、このやり方も覚えておきましょう。
まとめ
本記事ではPythonの標準入力について解説しました。
input関数の使い方がお分かり頂けたかと思います。
標準入力ができると、たとえばエクセルのデータをプログラムに入力する、ということも可能です。
また、1つのプログラムの出力内容を、他のプログラムで利用することもできますね。
標準入力を覚えることで、できることの幅が一気に広がるでしょう。