是否可以在python lambda函数中导入模块?例如,我有一个lambda函数,它需要import math
import math
is_na_yes_no = lambda x: 'Yes' if math.isnan(x) else 'No'
如何在lambda函数中包含import math
语句?
为澄清起见,我有一种情况需要将一些lambda函数放入配置文件中,并在其他一些python文件中评估该函数,例如:
{
"is_na_yes_no" = "lambda x: 'Yes' if math.isnan(x) else 'No'"
}
在这种情况下,评估这些lambda函数的python文件需要所有必需的模块。
答案 0 :(得分:1)
感谢@ L3viathan的答案。
这是同一件事,而无需在模块中import math
。
is_na_yes_no = lambda x: 'Yes' if __import__('math').isnan(x) else 'No'
它突出了python的灵活性-__import__
功能可在lambda函数中使用,而无需事先写出来。