是否有可能在Python中通过网络发送函数指针以在另一台机器上运行?在Python中通过网络发送函数指针
比方说,我有我想要运行的函数:
def myFunc():
...
是否有可能通过使用函数指针发送myFunc的到另一台机器,或者是函数指针只能在本地使用? 如果这是不可能的,我还有什么其他选择?发送python文件?
我对python的网络工作方式不感兴趣,因为那部分已经完全实现了。
是否有可能在Python中通过网络发送函数指针以在另一台机器上运行?在Python中通过网络发送函数指针
比方说,我有我想要运行的函数:
def myFunc():
...
是否有可能通过使用函数指针发送myFunc的到另一台机器,或者是函数指针只能在本地使用? 如果这是不可能的,我还有什么其他选择?发送python文件?
我对python的网络工作方式不感兴趣,因为那部分已经完全实现了。
您是否考虑过腌制您的功能并通过网络发送?
实例(服务器):
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)
例(CLIENT):
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
注意:请注意有关通过网络发送代码时可能出现的安全问题。
开箱即用并不那么容易。您需要远程计算机上的.py文件。但你可以用Python fabric来完成。
它几乎听起来像你想要的http://pythonhosted.org/Pyro4/ – 2013-03-01 17:57:35
百胜,远程代码执行。希望你真正确保你的连接。假设这是真的,但+1。 – 2013-03-01 17:58:45