ofutonneko

情弱がんばる自分用めも

Python3 リスト操作などメモ

AtCoder最初の10問やりながら使ったPython3リスト操作のメモ

スペースで区切られた複数個の要素をリストで受け取る
# 1 3 4 7
l = [int(i) for i in input().split()]
l = list(map(int, input().split()))   # 上と同じ
# l = [1, 3, 4, 7]
スペースで区切られたn行の複数個の要素をリストで受け取る
# 2
# 1 3 4 7
# 2 4 6
n = int(input()) 
l = [int(input()) for i in range(n)]
# l = [[1, 3, 4, 7], [2, 4, 6]]


標準入力の受け取り方まとめはこの記事が素晴らしい:AtCoderで使ってる入力メソッド(Python3) - Qiita

リストのソート
# 昇順
l.sort()
# 降順
l.sort(reverse=True)

ソートについての公式ドキュメント:ソート HOW TO — Python 3.6.5 ドキュメント

リストから偶数番目の要素の取り出し
# n番目からm個飛ばしで取り出す
l[n::m]

# l = [1, 3, 4, 7, 11]
l[0::2]
l[::2]   # 0は省略可
# [1, 4, 11]
l[3::1]
# [7, 11]

参考:Pythonのリストの偶数と奇数の取り出し方のメモ - 牌語備忘録 -pygo

リストの重複を排除してソート
set(l)
# setの結果はタプルなので、リストにしたい場合は
list(set(l))

参考:Pythonでリスト(配列)から重複した要素を削除・抽出 | note.nkmk.me