Shapely 安装以后出现下面这个错误:
from shapely.coords import CoordinateSequence
File "C:\ProgramData\Anaconda3\envs\db\lib\site-packages\shapely\coords.py", line 8, in <module>
from shapely.geos import lgeos
File "C:\ProgramData\Anaconda3\envs\db\lib\site-packages\shapely\geos.py", line 155, in <module>
_lgeos = CDLL(os.path.join(sys.prefix, 'Library', 'bin', 'geos_c.dll'))
File "C:\ProgramData\Anaconda3\envs\db\lib\ctypes\__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] 找不到指定的模块。
解决方案:
根据错误提示,打开 C:\ProgramData\Anaconda3\envs\db\lib\site-packages\shapely\geos.py 155 行 打印出 os.path.join(sys.prefix, 'Library', 'bin', 'geos_c.dll')路径
在我安装的shapely C:\ProgramData\Anaconda3\envs\db\Lib\site-packages\shapely\DLLs 这个文件夹中包含 geos_c.dll 等dll ,将这几个dll 复制到 os.path.join(sys.prefix, 'Library', 'bin', 'geos_c.dll') 这个文件所在的文件夹中就好了