python win32库与subprocess_依赖管理:Python2.7需要subprocess32
有一種聲明性的方式,但是它需要一個(gè)或多或少的最新版本的setuptools(如果我正確讀取
release notes,你至少需要20.2版本).您將在下面看到的內(nèi)容稱為環(huán)境標(biāo)記,并在
PEP 508中指定,閱讀它以獲取可用標(biāo)記的完整列表,并在需要時(shí)更好地理解標(biāo)記語法.
對(duì)于python版本,讓我們以您的包為例:您應(yīng)該在python2.X環(huán)境中安裝subprocess32依賴項(xiàng).像這樣增強(qiáng)你的依賴:
install_requires=[
'subprocess32; python_version
]
現(xiàn)在使用python2.7安裝軟件包subx會(huì)產(chǎn)生:
Processing ./dist/subx-2017.8.0-py2-none-any.whl
Collecting subprocess32; python_version < "3" (from subx==2017.8.0)
Installing collected packages: subprocess32, subx
Successfully installed subprocess32-3.2.7 subx-2017.8.0
如果你用python3.X安裝它,輸出將是:
Processing ./dist/subx-2017.8.0-py3-none-any.whl
Installing collected packages: subx
Successfully installed subx-2017.8.0
請(qǐng)注意,將跳過subprocess32的安裝.
另一個(gè)常見的例子是聲明特定于平臺(tái)的依賴項(xiàng):我有一個(gè)項(xiàng)目需要在Linux上安裝auditwheel并在MacOS上進(jìn)行分配.我聲明這樣的依賴:
install_requires=[
...
'auditwheel==1.7.0; "linux" in sys_platform',
'delocate==0.7.1; "darwin" == sys_platform',
]
請(qǐng)注意,如果您沒有專門針對(duì)任何主要的python版本,則需要對(duì)Linux進(jìn)行此檢查,因?yàn)?#xff1a;
$python2 -c "import sys; print sys.platform"
linux2
但
$python3 -c "import sys; print sys.platform"
linux
因此,如果您的包僅適用于python2.X,則可以使用檢查“l(fā)inux2”== sys.platform.這將使您的依賴項(xiàng)僅可以使用python2.X進(jìn)行安裝.
總結(jié)
以上是生活随笔為你收集整理的python win32库与subprocess_依赖管理:Python2.7需要subprocess32的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: layui数据表格自定义复选框表头_la
- 下一篇: redis和mysql实现原理_redi