メモ: リスト内包表記
リスト内包表記
めちゃくちゃ使うのでメモ。例えば n^2 の数列を作りたい時
python3
>>> l = [i**2 for i in range(6)]
>>> l
[0, 1, 4, 9, 16, 25]
このように f(x) for x in <イテレータ>]
とすれば f(x)
のリストを返してくれます。
if を併用
こう書けば条件を満たす要素のみに絞れます
python3
>>> l = [i**2 for i in range(6) if i%2 == 0] // i が 偶数の場合のみの i**2 を返す
>>> l
[0, 4, 16]
if else を併用
条件を満たすかどうかで値を変化させたい時は if else を使ってこんな感じにします
python3
>>> l = [i**2 if i%2 == 0 else 'odd' for i in range(6)]
>>> l
[0, 'odd', 4, 'odd', 16, 'odd']
ネスト
ネストすることも可能
python3
>>> l = [(i, j) for i in range(3) for j in ['a','b','c']]
>>> l
[(0, 'a'),
(0, 'b'),
(0, 'c'),
(1, 'a'),
(1, 'b'),
(1, 'c'),
(2, 'a'),
(2, 'b'),
(2, 'c')]
Author And Source
この問題について(メモ: リスト内包表記), 我々は、より多くの情報をここで見つけました https://qiita.com/bladr/items/d37e92143d1a046e3110著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .