Pythonでコマンドラインからちょっとキーボード入力して何かしたいときのサンプルです。
input()関数を使うと標準入力(大抵はキーボードだと思う)から文字列の入力が出来ます。
通常はprint文と組み合わせてこんな感じで使います。
print("お名前は? ", end="")
name = input()
print文の「, end=””」の部分ですが、print文の最後に改行をしないための設定です。
通常print文は勝手に最後改行されてしまうので、キーボードから入力するときは少し違和感があります。上記の場合だと「, end=””」をつけないと「お名前は?」と表示された下の行にカーソルが点滅してしまいます。そのためつけています。
実はinput文の引数に表示したい文字列を指定すると上記の2行は1行で書き直すことが出来ます。
name = input("お名前は? ")
実行結果はどちらも以下のようになります。(実行後、カーソルが点滅してキーボード入力待ちとなります。Enterキーで文字入力終了です)
お名前は?
本記事では、input文に引数を指定する方法(簡単な方法)で以下サンプルを示します。
サンプルは文字として入力したい場合と計算を伴うような数値として入力したい場合の2種です。
文字として入力したい場合
キーボードから入力した文字を変数nameに代入してから表示しています。
keyInput.py
# -*- coding: utf-8 -*-
"""
標準入力(キーボード)からの入力処理サンプル
"""
# 標準入力から文字列を受け取る
buffer = input("名前を入力してね: ")
# 入力した文字列を表示
print("こんにちは、{0}さん!".format(buffer) )
実行イメージ
数値として入力したい場合
もし計算を伴うような入力の場合は、int関数(整数の場合)やfloat関数(実数の場合)でくくってあげます。以下サンプルは整数の場合です。
keyInput2.py
# -*- coding: utf-8 -*-
"""
標準入力(キーボード)からの入力処理サンプル2(数値の場合)
"""
# キーボードから入力した2つの値を乗算する
x = int(input("x = "))
y = int(input("y = "))
# 「x × y =」の式と計算結果を表示
print("{0} × {1} = {2}".format(x, y, x*y) )
実行イメージ
以上、標準入力(キーボード)からの入力処理サンプルでした。
コメント