如何为指定的连接设置本地命名空间?

时间:2014-02-19 05:24:06

标签: python namespaces

我想编写一个简单的python C / S exec代码模型,它将发送在客户端编写的所有代码在服务器中执行。

简单地说,您可以认为我正在使用exec(code, globals())来运行远程代码。

我遇到了关于命名空间的问题:

如果我在连接中导入某些内容,另一个连接也可以使用此模块。

例如,我们有两个连接:A和B.

我在连接A中import os,然后连接B也可以使用os模块。

问题:我想要的是每个连接都有自己的执行环境,比如'globals'

1 个答案:

答案 0 :(得分:0)

目前,我正在使用一种愚蠢而暴力的解决方案。

我为每个连接创建dict,并相应地在dict中执行代码。

exec code in connection_dict[connection]

任何智能解决方案?比如python CAPI?再次感谢!