はじめに
paizaラーニングを活用して、pythonを学んでいます。
スキルチェックにおいて、標準入力で時間がかかることがあるので、備忘録を兼ねて入力要領を整理しました。
標準入力とは
Pythonの組み込み関数input()
を使用し、キーボードから入力を受け付けるものです。
以下の表のとおり整理して記述します。
入力値 : 入力先 | 入力値が1行 | 入力値が複数行 |
---|---|---|
数値:変数1つ | ① | ② |
変数複数 | ③ | ④ |
文字:変数1つ | ⑤ | ⑥ |
変数複数 | ⑦ | ⑧ |
数値入力
① 変数が1つの場合(入力値が1行)
(例)入力値が(12)や(1.0)の場合
n = int(input())
n = float(input()) #以下、floatは省略
(例)入力値が(12 13 14)の場合
n = list(map(int,input().split()))
#又は
n = [int(x) for x in input().split()]
# 結果
print(n)
# [12, 13, 14]
(例)入力値(12,13,14)や入力値(12/13/14)の場合
n = list(map(int,input().split(",")))
n = [int(x) for x in input().split("/")]
# 結果
print(n)
# [12, 13, 14]
小数の入力値に対しintで受け取ると「ValueError」になるので注意
split()の入力値が、”/” で区切られている場合は、split( )内を ”/” する。
② 変数が1つの場合(入力値が複数行)
(例)入力値(12
13
14)の場合
#入力値が3行の場合
n = [0]*3
for i in range(3):
n = int(input())
#又は
n = [int(input()) for _ in range(3)]
(例)入力値(12 22
13 23
14 24)の場合
n = [0]*3
for i in range(3):
n[i] = list(map(int,input().split()))
#又は
n =[list(map(int,input().split())) for _ in range(3)]
#結果
print(n)
#[[12, 22], [13, 23], [14, 24]]
③ 変数が複数の場合(入力値が1行)
(例)入力値が(12 13 14)の場合
a, b, c = map(int,input().split())
④ 変数が複数の場合(入力値が複数行)
(例)入力値(12
13
14)の場合
a, b, c = (int(input()) for x in range(3))
(例)入力値(12 22 32
13 23 33
14 24 34)の場合
a, b, c = [0]*3,[0]*3,[0]*3
for i in range(3):
a[i], b[i], c[i] = list(map(int,input().split()))
# 結果
print(a, b, c)
# [12, 13, 14] [22, 23, 24] [32, 33, 34]
a, b, c =[list(map(int,input().split())) for _ in range(3)]
# 結果
print(a, b, c)
# [12, 22, 32] [13, 23, 33] [14, 24, 34]
文字列入力
⑤ 変数が1つの場合(入力値が1行)
(例)入力値 (Qiita) の場合
s = input()
# 結果
print(s)
# Qiita
(例)入力値 (Qiita Qiita Qiita)の場合
s = input().split()
# 結果
print(s)
# ['Qiita', 'Qiita', 'Qiita']
⑥ 変数が1つの場合(入力値が複数行)
(例)入力値(Qiita
Qiita
Qiita)の場合
s = [""]*3
for i in range(3):
s[i] = input()
# 又は
s = [input() for _ in range(3)]
# 結果
print(s)
# ['Qiita', 'Qiita', 'Qiita']
⑦ 変数が複数の場合(入力値が1行)
(例)入力値 "Qiita Qiita Qiita"の場合
s, t, u = map(str,input().split())
# 結果
print(s, t, u)
# Qiita Qiita Qiita
⑧ 変数が複数の場合(入力値が複数行)
(例)入力値(Qiita
Qiita
Qiita)の場合
s = input()
t = input()
u = input()
# 又は
s, t, u =(input() for _ in range(3))
#結果
print(s, t, u)
# Qiita Qiita Qiita
組み込み関数 - input() — Python 3.12.4 ドキュメント
結びに
誤記等がありましたらご指摘いただけると幸いです。