How to check Django version

后端 未结 26 2556
梦如初夏
梦如初夏 2020-12-04 04:36

I have to use Python and Django for our application. So I have two versions of Python, 2.6 and 2.7. Now I have installed Django. I could run the sample application for testi

相关标签:
26条回答
  • 2020-12-04 05:12

    If you have pip, you can also do a

    pip freeze
    and it will show your all component version including Django .

    You can pipe it through grep to get just the Django version. That is,

    josh@villaroyale:~/code/djangosite$ pip freeze | grep Django
    Django==1.4.3
    
    0 讨论(0)
  • 2020-12-04 05:13

    you can import django and then type print statement as given below to know the version of django i.e. installed on your system:

    >>> import django
    >>> print(django.get_version())
    2.1
    
    0 讨论(0)
  • 2020-12-04 05:17

    Basically the same as bcoughlan's answer, but here it is as an executable command:

    $ python -c "import django; print(django.get_version())"
    2.0
    
    0 讨论(0)
  • 2020-12-04 05:17

    For Python:

    import sys
    sys.version
    

    For Django (as mentioned by others here):

    import django
    django.get_version()
    

    The potential problem with simply checking the version, is that versions get upgraded and so the code can go out of date. You want to make sure that '1.7' < '1.7.1' < '1.7.5' < '1.7.10'. A normal string comparison would fail in the last comparison:

    >>> '1.7.5' < '1.7.10'
    False
    

    The solution is to use StrictVersion from distutils.

    >>> from distutils.version import StrictVersion
    >>> StrictVersion('1.7.5') < StrictVersion('1.7.10')
    True
    
    0 讨论(0)
  • 2020-12-04 05:19

    The most pythonic way I've seen to get the version of any package:

    >>> import pkg_resources;
    >>> pkg_resources.get_distribution('django').version
    '1.8.4'
    

    This ties directly into setup.py: https://github.com/django/django/blob/master/setup.py#L37

    Also there is distutils to compare the version:

    >>> from distutils.version import LooseVersion, StrictVersion
    >>> LooseVersion("2.3.1") < LooseVersion("10.1.2")
    True
    >>> StrictVersion("2.3.1") < StrictVersion("10.1.2")
    True
    >>> StrictVersion("2.3.1") > StrictVersion("10.1.2")
    False
    

    As for getting the python version, I agree with James Bradbury:

    >>> import sys
    >>> sys.version
    '3.4.3 (default, Jul 13 2015, 12:18:23) \n[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)]'
    

    Tying it all together:

    >>> StrictVersion((sys.version.split(' ')[0])) > StrictVersion('2.6')
    True
    
    0 讨论(0)
  • 2020-12-04 05:19

    Type the following command in Python shell

    import django
    django.get_version()
    
    0 讨论(0)
提交回复
热议问题