当前位置:  开发笔记 > 编程语言 > 正文

导入特定于版本的python模块的最佳方法

如何解决《导入特定于版本的python模块的最佳方法》经验,为你挑选了1个好方法。

哪种方法最适合在python中导入特定于版本的模块?我的用例是我正在编写将部署到python 2.3环境中的代码,并在几个月内升级到python 2.5.这个:

if sys.version_info[:2] >= (2, 5):
    from string import Template
else:
    from our.compat.string import Template

或这个

try:
    from string import Template
except ImportError:
    from our.compat.string import Template

我知道这两种情况都同样正确且工作正常但哪一种更可取?



1> orip..:

始终是第二种方式 - 您永远不会知道将安装哪些不同的Python安装.Template是一个特殊情况,它更重要,但当你测试功能而不是版本控制时,你总是更健壮.

这就是我如何使Testoob支持Python 2.2 - 2.6:我尝试以不同的方式导入模块,直到它工作.它也与第三方库有关.

这是一个极端的例子 - 支持ElementTree的不同选项出现:

try: import elementtree.ElementTree as ET
except ImportError:
    try: import cElementTree as ET
    except ImportError:
        try: import lxml.etree as ET
        except ImportError:
            import xml.etree.ElementTree as ET # Python 2.5 and up

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有