围绕django版本添加逻辑的最佳方法?

Que*_*lan 2 python django

使用django.appsDjango 1.7中的新功能,我现在遇到的情况是Django版本将触发__init__文件处理配置的方式.例如:

from django.apps import AppConfig
...
Run Code Online (Sandbox Code Playgroud)

不适用于1.6及以下.因此检查版本会很有用.我的问题:检查Django版本的规范方法是什么?

字符串比较?(这看起来很时髦)

if django.get_version() >= '1.7.0'
Run Code Online (Sandbox Code Playgroud)

或访问版本元组?

major_version == django.VERSION[0]
minor_version == django.VERSION[1]
if major_version >= 1 and minor_version >= 7
Run Code Online (Sandbox Code Playgroud)

显然,第二种方法会在2.0上失败,我们只能说meh ......当我到达那里时,我会越过那座桥,但这当然看起来并不优雅.

有第三种选择吗?提前致谢!

Ign*_*ams 5

Python中的序列自然会进行比较.

>>> (2, 0, 0) > (1, 7)
True
>>> (1, 6) > (1, 7)
False
>>> (1, 6, 2) > (1, 7)
False
Run Code Online (Sandbox Code Playgroud)