4

我正在尝试在同一个 python 脚本中使用同一个库的两个不同版本(使用 easy_install --multi-version 安装)。下面的代码说明了总体思路。

如果我独立调用每个版本,一切都很好。如果我想调用一个版本,然后调用另一个版本,则会收到 VersionConflict 错误。

必须有一种方法可以在加载另一个之前从工作集中“卸载”以前的发行版,但我似乎总是在阅读pkg_resources 手册时迷路。

谁能指出我解决这个问题的正确方法?非常感谢。

#!/usr/local/bin/python2.7
# -*- coding: utf-8 -*-
def test1():
    import pkg_resources
    pkg_resources.require('obspy.core==0.6.2')
    import obspy.core
    try:
        print obspy.core.__version__
    except:
       print "Can not read obspy.core version"
def test2():
    import pkg_resources
    pkg_resources.require('obspy.core==0.4.8')
    import obspy.core
    try:
        print obspy.core.__version__
    except:
        print "Can not read obspy.core version"
if __name__ == '__main__':
    test1()
    test2()
4

1 回答 1

0

您是否尝试过reload(module)在模块已经导入的情况下使用?

重新加载

于 2012-03-07T14:29:18.630 回答