我应该在setup.py中使用元组或列表作为分类器吗?

时间:2019-04-04 06:15:47

标签: python list tuples setup.py

我有两个Python项目。在setup.py中,我的分类器位于方括号内:

classifiers=[
    'Development Status :: 5 - Production/Stable',
    'Natural Language :: English',
    'License :: OSI Approved :: Apache Software License',
    'Programming Language :: Python',
    'Programming Language :: Python :: 2.7',
    'Programming Language :: Python :: 3',
    'Programming Language :: Python :: 3.4',
    'Programming Language :: Python :: 3.5',
    'Programming Language :: Python :: 3.6',
    'Programming Language :: Python :: 3.7',
]

另一方面,它们在括号内:

classifiers=(
    'Development Status :: 5 - Production/Stable',
    'Natural Language :: English',
    'License :: OSI Approved :: Apache Software License',
    'Programming Language :: Python',
    'Programming Language :: Python :: 2.7',
    'Programming Language :: Python :: 3',
    'Programming Language :: Python :: 3.4',
    'Programming Language :: Python :: 3.5',
    'Programming Language :: Python :: 3.6',
    'Programming Language :: Python :: 3.7',
)

我知道一个是列表,另一个是元组,使用这两种格式都没有问题,但是我想知道,使用哪种格式有关系吗?

1 个答案:

答案 0 :(得分:1)

从历史上看,使其成为元组根本不是一种选择:

虽然使用元组不再是完全错误,但在运行安装程序时您仍然会收到警告:

$ python setup.py sdist
Warning: 'classifiers' should be a list, got type 'tuple'
...

TL; DR

使用列表而不是元组作为分类器。