在地图中使用条件和lambda

Rob*_*Rob 3 python lambda conditional dictionary python-2.7

如果我想获取一个数字列表并执行以下操作:

lst = [1,2,4,5]
[1,2,4,5] ==> ['lower','lower','higher','higher']
Run Code Online (Sandbox Code Playgroud)

3使用map函数的条件在哪里,有一种简单的方法吗?

显然map(lambda x: x<3, lst)让我非常接近,但是如何在地图中包含一个语句,允许我立即返回一个字符串而不是布尔值?

Joh*_*ooy 10

>>> lst = [1,2,4,5]
>>> map(lambda x: 'lower' if x < 3 else 'higher', lst)
['lower', 'lower', 'higher', 'higher']
Run Code Online (Sandbox Code Playgroud)

旁白:通常首选使用列表理解

>>> ['lower' if x < 3 else 'higher' for x in lst]
['lower', 'lower', 'higher', 'higher']
Run Code Online (Sandbox Code Playgroud)