在地图在Python

我想复制下面的JavaScript代码在Python执行代码块:在地图在Python

let a = [0, 4, 5] 

b = a.map(x => {

if(x < 3) return 0

else return 1

})

任何想法,我该怎么办呢? 我不知道如何在map函数中执行代码块。

回答:

您可以做一个功能,或者使用lambda函数是这样的:

>>> a = [0, 4, 5] 

>>> b = map(lambda x: 0 if x < 3 else 1, a)

>>> b

[0, 1, 1]

唯一一种在Python匿名函数lambda表达式,而且他们的限制只能是一个表达式,如果你希望你有一个适当的功能,给它一个名字:

def map_f(x): 

if x < 3:

return 0

else:

return 1

b = map(map_f, a)

回答:

就个人而言,我更喜欢列表理解到map功能。

>>> a = [0, 4, 5] 

>>> [int(x >= 3) for x in a]

[0, 1, 1]

它们允许您使用任何您想要的表达而无需创建函数。

以上是 在地图在Python 的全部内容, 来源链接: utcz.com/qa/258752.html

回到顶部