import numpy as np
def func_a(a,b):
res = a + b
print("func_a, result : ", res)
return res
def func_b(a,b):
res = np.sum(np.array((a,b)))
print("func_b, result : ", res)
return res
def add(x,y):
return(x+y)
dynFuncCalls={"add":add}
#Reference your function to a dictionary.
dynFunc["add"](2,3)
#Call it.
#Here also, the output would be: 5
您可以将第一个文件定义为包含所有函数,例如:
file_1.py
要从另一个文件导入它们,可以使用
exec(open("file_1.py").read())
(请参见this answer),第二个文件的内容如下:file_2.py
然后您可以通过以下方式在shell中运行
file_2.py
:您可以使用built-in function
eval
或仅引用function来完成任务。你知道吗使用
eval
只需定义函数并提供函数名作为参数。你知道吗
确保eval函数的参数是字符串。ie,提供你的 函数名eval为“字符串”,后跟参数。你知道吗
输出为:5
使用函数引用。你知道吗
定义函数,将对函数的引用添加到字典中,并使用函数的键从via dict调用函数。你知道吗
注意:避免使用eval,因为它是一个“dangerous function”。它允许用户执行任意代码&这可能会危害整个系统。 所以,不要用它。这是个坏习惯。你知道吗
使用函数引用,我在方法2中提到过。它非常简单和安全。(确保处理KeyError异常)。你知道吗
相关问题 更多 >
编程相关推荐