Requirements.txt中的python版本与setup.py中的安装问题有关

时间:2018-06-19 15:05:23

标签: python python-3.x python-2.x setup.py requirements.txt

我有一个require.txt文件,其中包含类似数据

py3DNS==3.1.0; python_version > '3'
scapy-python3==0.23; python_version > '3'
pyDNS==2.3.6; python_version < '3'
scapy==2.4.0; python_version < '3'

用于在库安装期间指定python版本

并且在setup.py中,我用来从Requirements.txt文件中加载需求

requirements = open("requirements.txt").read().rsplit()
setup(
install_requires=requirements,
...)

得到了

requirements = ['py3DNS==3.1.0;', 'python_version', '>', "'3'", 'scapy-python3==0.23;', 'python_version', '>', "'3'", 'pyDNS==2.3.6;', 'python_version', '<', "'3'", 'scapy==2.4.0;', 'python_version', '<', "'3'"]

基本上不能使用,我可以手动进行更改,但是我想知道是否有任何通用的方法可以做到这一点

1 个答案:

答案 0 :(得分:0)

尝试分割成这样的行:

mysqli

产生

mysqli

您可以选择执行以下操作以获取软件包和版本:

requirements = open("requirements.txt").read().split('\n')

获取

requirements = ["py3DNS==3.1.0; python_version > '3'",
"scapy-python3==0.23; python_version > '3'",
"pyDNS==2.3.6; python_version < '3'",
"scapy==2.4.0; python_version < '3'",
'']