【发布时间】:2015-05-24 19:43:57
【问题描述】:
我想使用仅支持 python 3.2 的商业包。但是很多支持 python 3.4 的包在 3.2 中无法轻松安装。
那么有没有可能让一个python 3.4的程序调用一个python 3.2的函数呢?
我的遍历方法是写一个python 3.2程序,使用pickle保存函数输出:
# python 3.2, function.py
with open("temp.pickle",'wb") as pickle_output:
pickle.dump(output,pickle_output)
并在 python 3.4 程序中调用它:
# python 3.4 main.py
subprocess.call("c:\python32\python function.py")
然后读取泡菜:
# python 3.4 main.py
with open("temp.pickle",'wb") as pickle_input:
input = pickle.load(pickle_input)
并在python 3.4中使用输入对象
它起作用了,但速度很慢,而且看起来很傻。有没有其他方法可以做到这一点? import module using python 3.2 之类的东西?
【问题讨论】:
-
您是否尝试从 3.4 导入包?
-
@kirbyfan64sos 我做了,得到:
ImportError: Module use of python32.dll conflicts with this version of Python. -
使用来自 Py3.4 的子进程运行 Py3.2 命令并直接使用输出?
-
这可能行不通,但值得一试:您能否将模块使用的python32.dll替换为python34.dll,即将python34.dll复制到python32.dll。跨度>
-
@kirbyfan64sos 我试过了,同样的错误。╮(╯▽╰)╭
标签: python pickle python-3.4 python-3.2