Pythonの標準入力の基本を現役エンジニアが解説【初心者向け】

初心者向けにPythonの標準入力の基本について現役エンジニアが解説しています。標準入力とは、プログラムと実行環境との間に用意されているデーターの受け渡し口のことでキーボードが、標準出力先にはディスプレイが該当します。標準入力で文字列や数値を受け取ってみましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

Pythonの標準入力の基本について解説します。

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事をまずご覧ください。

 

なお本記事は、TechAcademyのPythonオンライン講座の内容をもとにしています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonの標準入力の基本について詳しく説明していくね!

大石ゆかり

お願いします!

 

input関数とは

input関数とは、Pyhonで標準入力を受け取るための関数です。標準入力とは、プログラムと実行環境との間に用意されているデーターの受け渡し口のことです。

プログラムとはPythonのソースコードのことを指します。実行環境とはプログラムを実行するPython.exe(Windowsの場合)を指します。標準入力はプログラムの実行中にキーボードから入力した値を受け取りたい時などに利用します。

input関数で標準入力を受け取ると、受け取った値はPythonでは文字列として扱われます。input関数の書き方は以下のとおりです。

変数 = input()

input関数に、標準入力を受け取る際に表示するメッセージを引数で指定することができます。

変数 = input("メッセージ")

input関数はPythonの組み込み関数の1つです。組み込み関数とはPython言語で最初から使えるようになっている関数のことで、input関数以外にもいくつか種類があります。

詳しくは以下を参考にしてください。

Pythonの組み込み関数(input)

 

文字列を入力して出力

標準入力を受け取る方法として、まずは文字列を入力する例を確認していきましょう。input関数で標準入力を受け取ると、受け取った値はPythonでは文字列として扱われます。

例えば以下はinput関数で受け取った値を変数「mei」に格納する例です。

mei = input()

それでは、文字列を入力して出力する例を確認してみましょう。

以下の例では、入力した文字列の前後の空白をstrip関数で除去した後、 +演算子を使って文字列を結合してsimei変数に格納しています。

si = input("名字を入力してください")
mei = input("名前を入力してください")
si = si.strip()
mei = mei.strip()
simei = si + " " + mei
print("こんにちは" + simei + "さん!")

実行結果は以下のようになります。
最初は「煌木」と入力し、次は「太郎」と入力しています。

名字を入力してください 煌木  
名前を入力してください太郎  
こんにちは 煌木 太郎 さん!

 

[PR] Pythonで挫折しない学習方法を動画で公開中

整数を入力して出力

次は整数を入力する場合です。

inputで受け取った値は文字列として扱われるので、数値に変換する必要があります。数値に変換するには、整数の場合はint()を、浮動小数点の場合はfloat()を使います。

以下の例では入力した値を整数に変換して、計算した結果を出力しています。

val = input("円の半径を入力してください")
radius = int(val)
area = radius * radius * 3.14
print("半径" + val + "の円の面積は", area, "です" )

実行結果は以下のようになります。

円の半径を入力してください10
半径10の円の面積は 314.0 です

 

複数の文字列を入力して出力

複数の文字列を入力する場合はinputを繰り返します。

以下はwhile句と組み合わせた例です。このようにすると、回数を決めずに複数の文字列を入力できますが、whileが無限ループにならないよう、終了条件はきちんと決めておきましょう

mylist = []
while True:
  val = input("値を入力してください(Enterのみで終了)")
  if len(val)==0:
    break
  mylist.append(val)

if len(mylist)>0:
  print("入力した値は以下のとおりです")
  for item in mylist:
    print(item)

実行結果は以下のようになります。

値を入力してください(Enterのみで終了)りんご
値を入力してください(Enterのみで終了)いちご
値を入力してください(Enterのみで終了)バナナ
値を入力してください(Enterのみで終了)チョコレート
値を入力してください(Enterのみで終了)
入力した値は以下のとおりです
りんご
いちご
バナナ
チョコレート

 

監修してくれたメンター

太田和樹(おおたかずき)

ITベンチャー企業のPM兼エンジニア

普段は主に、Web系アプリケーション開発のプロジェクトマネージャーとプログラミング講師を行っている。守備範囲はフロントエンド、モバイル、サーバサイド、データサイエンティストと幅広い。その幅広い知見を生かして、複数の領域を組み合わせた新しい提案をするのが得意。

開発実績:画像認識技術を活用した駐車場混雑状況把握(実証実験)、音声認識を活用したヘルプデスク支援システム、Pepperを遠隔操作するアプリの開発、大規模基幹系システムの開発・導入マネジメント。

地方在住。仕事のほとんどをリモートオフィスで行う。通勤で消耗する代わりに趣味のDIYや家庭菜園、家族との時間を楽しんでいる。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

オンラインのプログラミングスクールTechAcademyではPythonを使って機械学習の基礎を学ぶPythonオンライン講座を開催しています。

初心者向けの書籍を使って人工知能(AI)や機械学習について学ぶことができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。