Pythonの標準入力

標準入力とは?

生徒
生徒

教授?
Pythonの標準入力って何ですか?

教授
教授

Pythonの標準入力とは、プログラムと実行環境との間に用意されている標準のデータの受け渡し口のことで、キーボードや入力エリアからの数値や文字列を受け取ることができます。
Pythonではinput関数を使って標準入力を受け取ることができますよ?

基本的な入力 (1区切りの文字列の入力)

教授
教授

基本的な入力は、次のようになりますよ?

# input関数で標準入力を受け取る
s = input()

# 受け取った文字列を出力する
print(s)
生徒
生徒

割とシンプルなんですね。

行の配列 (横一列の複数の入力)

教授
教授

行の配列は、次のようになりますよ?

# input関数で標準入力を受け取り、split関数で空白で区切ってリストにする
a = input().split()

# 受け取ったリストを出力する
print(a)
生徒
生徒

split関数というのが出てきましたね。

教授
教授

split(“,”) というようにすると、「,」(カンマ)区切りになりますよ?

列の配列 (縦一列の複数の入力)

教授
教授

列の配列は、次のようになりますよ?

# 入力される行数をinput関数で受け取る
n = int(input())

# 空のリストを作る
b = []

# for文でn回繰り返す
for i in range(n):
    # input関数で標準入力を受け取り、リストに追加する
    b.append(input())

# 受け取ったリストを出力する
print(b)
生徒
生徒

for文が出てきましたね。
入力される行数が分からない時は、どうなりますか?

列の配列 (縦一列の入力行数不明)

教授
教授

入力される行数が分からない場合は、次のようになりますよ?

# 空のリストを作る
c = []

# 無限ループを開始する
while True:
    # input関数で標準入力を受け取る
    s = input()

    # 入力が空白でない場合
    if s != "":
        # リストに追加する
        c.append(s)
    # 入力が空白の場合
    else:
        # ループを抜ける
        break

# 受け取ったリストを出力する
print(c)
生徒
生徒

input関数で標準入力を受け取り、空白でない場合はリストに追加し、空白の場合はループを抜けるという処理を行っているのですね。

教授
教授

ええ、そんな感じですよ?

タイトルとURLをコピーしました