Python - 存储函数定义供以后使用
Python - Store function definition for later use
我有一个应用程序 运行 许多使用散景的可视化效果。我为每个可视化定义了一个函数。
对于新的可视化,有没有办法 -
- 我在其他地方写了可视化功能,例如jupyter 笔记本
- 以某种方式将此函数存储在数据库或文件中,就像我们在 javascript
中所做的那样
- 稍后使用 eval() 运行 这个函数
你能给我指个方向吗?我尝试了 lambda 函数,但那是单行函数,而我的函数可能更复杂。
如有需要,请在评论中提出:)
提前致谢。
好的,我得到答案了。 Python 泡菜 - https://docs.python.org/3/library/pickle.html
无需使用 eval()。
一个非常基本和简单的例子。
import pickle
def calculations(a, b):
c = a + b
print('Addition is ', c)
return c
fun_def_str = pickle.dumps(calculations)
cal = pickle.loads(fun_def_str)
result = cal(5,6) # Prints - Addition is 11
print(result) # Outputs: 11
我希望这对某人有所帮助:)
我有一个应用程序 运行 许多使用散景的可视化效果。我为每个可视化定义了一个函数。
对于新的可视化,有没有办法 -
- 我在其他地方写了可视化功能,例如jupyter 笔记本
- 以某种方式将此函数存储在数据库或文件中,就像我们在 javascript 中所做的那样
- 稍后使用 eval() 运行 这个函数
你能给我指个方向吗?我尝试了 lambda 函数,但那是单行函数,而我的函数可能更复杂。
如有需要,请在评论中提出:)
提前致谢。
好的,我得到答案了。 Python 泡菜 - https://docs.python.org/3/library/pickle.html
无需使用 eval()。
一个非常基本和简单的例子。
import pickle
def calculations(a, b):
c = a + b
print('Addition is ', c)
return c
fun_def_str = pickle.dumps(calculations)
cal = pickle.loads(fun_def_str)
result = cal(5,6) # Prints - Addition is 11
print(result) # Outputs: 11
我希望这对某人有所帮助:)