带有案例的Python map()

Bol*_*ter 1 python mapping functional-programming

很简单,但我找不到一个体面的例子; 所以我在这里问!

基本上我是什么,resultList = map(如果> 0:执行此操作,否则:执行此操作,listOfNumbers)

我怎么做?

mar*_*cog 7

使用lambda(docs)函数.我使用的占位符的功能foo()bar()它你必须与你的"做" /"做"位来代替.

resultList = map(lambda x: foo(x) if x > 0 else bar(x), listOfNumbers)
Run Code Online (Sandbox Code Playgroud)

另一种选择,正如@hop正确地说是Python中的首选方法,是使用列表理解.这甚至不需要使用lambda功能.

resultList = [foo(x) if x > 0 else bar(x) for x in listOfNumbers)
Run Code Online (Sandbox Code Playgroud)