Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 围绕django版本添加逻辑的最佳方法?_Python_Django - Fatal编程技术网

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

Python 围绕django版本添加逻辑的最佳方法?,python,django,Python,Django,在django 1.7中有了新的django.apps,我现在遇到了一种情况,django版本将触发\uuuu init\uuu文件处理配置的方式。例如: from django.apps import AppConfig ... 不适用于1.6及以下版本。因此,检查版本会很有用。我的问题:检查Django版本的标准方法是什么 字符串比较?(这看起来很奇怪) 或者访问版本元组 major_version == django.VERSION[0] minor_version == django.

在django 1.7中有了新的
django.apps
,我现在遇到了一种情况,django版本将触发
\uuuu init\uuu
文件处理配置的方式。例如:

from django.apps import AppConfig
...
不适用于1.6及以下版本。因此,检查版本会很有用。我的问题:检查Django版本的标准方法是什么

字符串比较?(这看起来很奇怪)

或者访问版本元组

major_version == django.VERSION[0]
minor_version == django.VERSION[1]
if major_version >= 1 and minor_version >= 7
显然,第二种方法在2.0上会失败,我们可以说meh。。。当我到达那里时,我会穿过那座桥,但那看起来确实不优雅


还有第三种选择吗?提前谢谢

自然比较Python中的序列

>>> (2, 0, 0) > (1, 7)
True
>>> (1, 6) > (1, 7)
False
>>> (1, 6, 2) > (1, 7)
False

正确的;好吧,现在说得通了。我应该能够做到:
django.VERSION>=(1,7)
>>> (2, 0, 0) > (1, 7)
True
>>> (1, 6) > (1, 7)
False
>>> (1, 6, 2) > (1, 7)
False