python中通过网络发送函数指针
是否有可能通过网络发送python中的函数指针以在另一台机器上运行 假设我有一个想要运行的函数:python中通过网络发送函数指针,python,function,networking,pointers,distributed,Python,Function,Networking,Pointers,Distributed,是否有可能通过网络发送python中的函数指针以在另一台机器上运行 假设我有一个想要运行的函数: def myFunc(): ... 是否可以使用函数指针将myFunc发送到另一台计算机,或者函数指针仅在本地可用? 如果不可能,我还有什么其他选择?发送python文件 我对python中的网络工作方式不感兴趣,因为这一部分已经完全实现了。开箱即用并不容易。您需要远程计算机上的.py文件。但是你可以这样做。 < P>你有没有考虑过你的功能并通过网络发送? 示例(服务器): 示例(客户): 注
def myFunc():
...
是否可以使用函数指针将myFunc发送到另一台计算机,或者函数指针仅在本地可用?
如果不可能,我还有什么其他选择?发送python文件
我对python中的网络工作方式不感兴趣,因为这一部分已经完全实现了。开箱即用并不容易。您需要远程计算机上的.py文件。但是你可以这样做。 < P>你有没有考虑过你的功能并通过网络发送? 示例(服务器): 示例(客户):
注意:请注意通过网络发送代码时可能出现的安全问题。听起来您几乎想要远程代码执行。希望你真的能确保你的关系。假设这是真的,+1。但据我所知,类、函数和方法不能被pickle!这不管用。它pickle一个函数引用,但该函数必须在另一台计算机上。我想我有点不清楚,但我不会运行“命令”,我想在另一台计算机上运行我的python函数(即算法),我如何发送该函数?“结构”似乎类似于“远程系统管理”…@ux11您可以将在fab文件中定义的函数发送到其他机器。它们可用于系统管理或其他目的。
import pickle
def test1(): #Function to be send
return True
with open('data.pickle', 'wb') as f: #On server you pickling function
pickle.dump(test1.__code__, f)
import pickle
import types
with open('data.pickle', 'rb') as f: #On client you load and unpickle function
code = pickle.load(f)
test2 = types.FunctionType(code, globals())
print(test2()) #Result will be True