標準入力の理解を深めたい
いままで標準入力を訳も分からずコピペしているだけだったので、しっかり理解したうえで使いたいと思い、個人的にまとめる。
入力が整数1つ
入力
N
コード
i = int(input())
note
input()関数で入力されたものはすべてstr(文字列型)となる。
そのままでは計算し使用できないため、int()関数に入れて整数型にする。
print(type())で文字列型か整数型か確認できる。
行列
入力
A₁,A₂,A₃...AN
コード
N = list(map(int, input().split()))
note
- list()関数:新たなリストを作成し、そのリストを返す。
N = list(input())
上記だと文字列型のリストが作られる。
改行や空白があった場合、それも要素の一つとなってしまう。
入力:4 5 6 → リスト ['4',' ','5',' ','6',]
これでは使えないので、まず空白で区切り文字のみをリスト化する。
- split()メソッド:任意の文字で区切りリスト化する
- 書式:文字列を代入した変数.sprit('区切りたい文字')
N = list(input().split())
入力:4 5 6 → リスト ['4','5','6']
文字型のままだと計算に使えないので整数型にする。
入力を整数型にする処理
map(int,input())
- map()関数:リストの各値に対して、指定した関数を使うことができる。
- 書式:list(map(関数, イテラブル))
※イテラブル:繰り返し可能なオブジェクトのこと
- 書式:list(map(関数, イテラブル))
勉強はつづく
- 標準入力の勉強をしたらここに追記していく(12/19)