1

什么是/是否有公开模块版本号的首选方法?

  • Python 本身使用内置元组sys.version_info

    >>> sys.version_info
    sys.version_info(major=3, minor=3, micro=0, releaselevel='final', serial=0)
    
  • MySQLdb(例如)使用一个普通的元组:

    >>> MySQLdb.version_info
    (1, 2, 3, 'final', 0)
    
  • 一些第三方库使用字符串__version__

    >>> requests.__version__
    '1.2.3'
    
  • 一些框架使用元组VERSION

    >>> django.VERSION
    (1, 6, 0, 'alpha', 0)
    

...显然,在这件事上有很多不同的用法!

4

1 回答 1

5

根据PEP 396,应该是module.__version__。根据该 PEP,您应该使用PEP 386中的规范化版本样式来决定应该如何编写它。

看起来PEP 440的草案版本将取代 386。

于 2013-06-04T13:40:12.607 回答