在过去的几天里,我一直在玩Nuitka,这是一个将Python编译成可执行C/C++程序的工具.
我没有发现Nuitka的任何速度优势(与PyPy相比).那么Nuitka是什么意思?我错过了什么吗?
例如,如果我想检测数组中的所有奇数并将它们设置为零,我可以使用:
def setToZeroIfOdd(n):
if n % 2 == 0:
pass
else:
return 0
numbers = range(1,1000)
numbers = map(setToZeroIfOdd, numbers)
Run Code Online (Sandbox Code Playgroud)
这就像一个魅力.
但是当我尝试类似的东西时
def setToZeroIfDivisibleBy(n, divisor):
if n % divisor == 0:
return 0
else:
pass
numbers = map(setToZeroIfDivisibleBy(divisor=3), numbers)
Run Code Online (Sandbox Code Playgroud)
它期待两个论点.同样,
numbers = map(setToZeroIfDivisibleBy, numbers, divisor=3)
Run Code Online (Sandbox Code Playgroud)
不起作用.我怎样才能divisor从内部传递这个论点map()?