Python でコードを書き始めて暫くすると戸惑うのが
(paizaのスキルチェックで C ランク問題を解き始めたあたり)
複数の標準入力を受け取る方法です。
今回は以下の流れで順番に説明していきます。
- 1つの標準入力をそのまま受け取る
- 1つの標準入力を型変換して受け取る
- 複数の標準入力を分割して受け取る
- 複数の標準入力を分割し、型変換して受け取る
それぞれについて説明します。
1. 1つの標準入力をそのまま受け取る
標準入力を受け取るには input()
を使うことで実現できます。
具体的には input_line = input()
と指定することで、
「input_line」という変数に標準入力を格納します。
### ここまで説明した内容を踏まえたコード例
# 1つの標準入力をそのまま受け取る
input_line = input()
2. 1つの標準入力を型変換して受け取る
これは標準入力を input()
で受け取った後で、
そのまま型変換して変数に代入することで実現できます。
具体的には input_line = int(input())
と指定することで、
標準入力された文字列型をint型に変換して
「input_line」という変数に格納します。
### ここまで説明した内容を踏まえたコード例
# 1つの標準入力を型変換して受け取る
input_line = int(input())
3. 複数の標準入力を分割して受け取る
これは標準入力を input()
で受け取りつつ、
split()
メソッドで分割することで実現できます。
具体的には n, m = input().split()
と指定することで、
標準入力された文字列型をスペース区切りで分割して
「n」と「m」という変数に格納します。
split()
メソッドのデフォルトの区切り文字が「スペース」であるため、スペースで分割されます。
区切り文字を変更したい場合は、split('【文字列】')
で実現できます。
### ここまで説明した内容を踏まえたコード例
# 複数の標準入力を分割して受け取る
n, m = input().split()
4. 複数の標準入力を分割し、型変換して受け取る
これは、 input()
と split()
のメソッドを使って受け取りつつ、
map()
関数を使うことで実現できます。
具体的には n, m = map(int, input().split())
と指定することで、
標準入力された文字列型をスペース区切りで分割する。
その値を「int」関数に渡すことで型変換し、
最終的に「n」と「m」という変数に格納します。
### ここまで説明した内容を踏まえたコード例
# 複数の標準入力を分割して受け取る
n, m = map(int, input().split())