Pythonの標準入力の基本を現役エンジニアが解説【初心者向け】
初心者向けにPythonの標準入力の基本について現役エンジニアが解説しています。標準入力とは、プログラムと実行環境との間に用意されているデーターの受け渡し口のことでキーボードが、標準出力先にはディスプレイが該当します。標準入力で文字列や数値を受け取ってみましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,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関数以外にもいくつか種類があります。
詳しくは以下を参考にしてください。
文字列を入力して出力
標準入力を受け取る方法として、まずは文字列を入力する例を確認していきましょう。input関数で標準入力を受け取ると、受け取った値はPythonでは文字列として扱われます。
例えば以下はinput関数で受け取った値を変数「mei」に格納する例です。
mei = input()
それでは、文字列を入力して出力する例を確認してみましょう。
以下の例では、入力した文字列の前後の空白をstrip関数で除去した後、 +演算子を使って文字列を結合してsimei変数に格納しています。
si = input("名字を入力してください") mei = input("名前を入力してください") si = si.strip() mei = mei.strip() simei = si + " " + mei print("こんにちは" + simei + "さん!")
実行結果は以下のようになります。
最初は「煌木」と入力し、次は「太郎」と入力しています。
名字を入力してください 煌木 名前を入力してください太郎 こんにちは 煌木 太郎 さん!
整数を入力して出力
次は整数を入力する場合です。
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を使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。
挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。