我需要知道是否存在python模块,而不导入它.
导入可能不存在的东西(不是我想要的东西):
try:
import eggs
except ImportError:
pass
Run Code Online (Sandbox Code Playgroud) 说我想安装pyodbc.它不能在某些Windows机器上构建,但有另一种选择 - pypyodbc这是纯粹的python实现pyobdc.
是否有指定的方式install_requires=["pyobdc"]对setuptools.setup与落回pypyodbc,如果没有安装前包?
UPD:我针对这种特殊情况的解决方案:
import sys
from setuptools import setup
if sys.platform.startswith("win"):
pyodbc = "pypyodbc>=1.2.0"
else:
pyodbc = "pyodbc>=3.0.7"
...
setup(
...
install_requires=[pyobdc]
)
Run Code Online (Sandbox Code Playgroud)
但我仍然在寻找更通用的解决方案.