Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
类函数中的Python映射_Python - Fatal编程技术网

类函数中的Python映射

类函数中的Python映射,python,Python,很简单 我有这个: for i in self.Abilities: i.OnTimer(amount) 我能换成这样吗 map(Ability.OnTimer,self.Abilities,amount) 我想将map与类函数一起使用,但无法使其正常工作。您可以使用functools.partial在调用函数之前为函数提供参数: from functools import partial map(partial(Ability.OnTimer, amount = amount),

很简单

我有这个:

for i in self.Abilities:
    i.OnTimer(amount)
我能换成这样吗

map(Ability.OnTimer,self.Abilities,amount)

我想将map与类函数一起使用,但无法使其正常工作。

您可以使用
functools.partial
在调用函数之前为函数提供参数:

from functools import partial

map(partial(Ability.OnTimer, amount = amount), self.Abilities)

但你真的认为这会更具可读性吗?请注意,
map
在Python3中是懒惰的

您应该使用
map
计算值列表,而不是计算其副作用。如果您正在执行一系列操作,那么使用
for
循环更具可读性。人们将更容易理解代码的意图