1. ホーム
  2. python

[解決済み] if else in a list comprehension [重複].

2022-03-17 13:27:16

質問

リストがあります l :

l = [22, 13, 45, 50, 98, 69, 43, 44, 1]

45以上の数字には1を、それ以下の数字には5を加えたいと思います。

試してみた

[x+1 for x in l if x >= 45 else x+5]

しかし、シンタックスエラーが出ます。どうすれば if - else リスト内包でこんな感じ?

どのように解決するのですか?

>>> l = [22, 13, 45, 50, 98, 69, 43, 44, 1]
>>> [x+1 if x >= 45 else x+5 for x in l]
[27, 18, 46, 51, 99, 70, 48, 49, 6]

もし <condition> , else do-something else.