CランクやBランクに取り組みたい方向け
今回は、paizaラーニングでも頻出の基本的な関数や書き方、入力方法をまとめてみました!
今回紹介する関数・メソッド一覧
-
input()- 標準入力から文字列を取得 -
split()- 文字列を分割してリストにする -
join()- リストの要素を結合して文字列にする -
map()- リストの各要素に関数を適用 -
len()- 要素数を取得 -
range()- 連続する整数を生成 -
enumerate()- インデックスと要素を同時に取得 -
max()/min()- 最大値・最小値を取得 -
sum()- 合計を計算 -
sorted()- 並び替えたリストを返す
1. 文字列の入力
paizaではinputで入力を受け取るのが基本となるためinput()を使います。
a = input() # 1行の文字列を取得
print(a)
複数の値を分けて入力する場合
a, b, c = input().split() # "aa bb cc" と入力 → a="aa", b="bb", c="cc"
print(a, b, c)
-
split()でスペース区切りの文字列を分割して、それぞれの変数に代入できます
数値(int型)として扱う場合
a, b, c = map(int, input().split()) # "10 20 30" と入力 → a=10, b=20, c=30
print(a + b + c)
-
map(int, input().split())で分割した文字列を整数に変換できます
複数行の入力を受け取る場合
入力が縦に続いている場合:
# 入力例:
# aa
# bb
# cc
# dd
# ee
data = []
for i in range(5): # 行数が分かっている場合
data.append(input())
print(data) # ['aa', 'bb', 'cc', 'dd', 'ee']
最初に個数が与えられる場合
# 入力例:
# 5
# aa
# bb
# cc
# dd
# ee
n = int(input()) # 最初に個数を取得
data = []
for i in range(n):
data.append(input())
print(data) # ['aa', 'bb', 'cc', 'dd', 'ee']
-
最初に
int(input())で個数を取得してから、その回数分ループで入力を受け取ります
2. 文字列の分割・結合
文字列操作の基本として、splitとjoinもよく使います。
text = "apple,banana,orange"
fruits = text.split(",") # ["apple", "banana", "orange"]
print(fruits)
joined = "-".join(fruits) # "apple-banana-orange"
print(joined)
-
split("区切り文字"):文字列を指定した文字で分割してリストにする -
join(リスト):リストの要素を指定した文字で結合して文字列にする
3. リスト内包表記(内法表記)
リストを効率よく作る方法として内包表記があります。
numbers = [1, 2, 3, 4, 5]
squared = [n**2 for n in numbers] # [1, 4, 9, 16, 25]
print(squared)
-
[処理 for 変数 in リスト]で新しいリストを作成できます - 条件付きも可能です:
even_squared = [n**2 for n in numbers if n % 2 == 0] # [4, 16]
4. 基本の関数
よく使う基本関数は以下の通りです。
-
len():要素数を取得 -
range():連続する整数の生成 -
enumerate():リストのインデックスと要素を同時に取得
for i, fruit in enumerate(fruits):
print(i, fruit)
5. よく使う組み込み関数
-
max()/min():最大・最小の取得 -
sum():合計の計算 -
sorted():並び替え
nums = [3, 1, 4, 2]
print(sorted(nums)) # [1, 2, 3, 4]
print(sum(nums)) # 10
まとめ
Pythonでは、入力・文字列操作・リスト操作・基本関数を押さえておくと、paizaの問題もスムーズに解けるようになります。
まずは手を動かして試してみることが大切です。特に、複数の入力や型変換は最初は少し混乱しやすいので、何度も練習して慣れておくと良いでしょう。
今回は以上になります!それではよいpaizaライフを![]()