从shapely.geometry.polygon导入多边形时出错

时间:2015-04-27 19:23:50

标签: python python-import shapely

在我的带有Python 3.4.3的Anaconda 2.2 64bit中,以下行很有效:

import shapely

但是以下一行:

from shapely.geometry.polygon import Polygon

返回以下错误:

OSError: [WinError 126] The specified module could not be found

我错过了什么?

修改

我尝试使用iNotebook,idle.exe和Eclipse。他们都使用Anaconda(我的计算机上唯一的Python安装),他们都显示相同的错误。

如果我在Eclipse中键入from shapely.geometry import Polygon,然后单击Polygon,然后按F3,Eclipse就可以打开模块C:\Anaconda3\Lib\site-packages\shapely\geometry\polygon.py。所以Eclipse能够找到它,但执行失败。

编辑2

我刚刚在具有类似配置的另一台计算机上尝试了相同的导入,但它确实有效。 "只有"两台计算机之间的区别在于,一台安装了Windows 7(可以正常运行),一台安装了Windows 8(它没有)。

我按照相同的旧清单在两台计算机上安装了Anaconda和一些软件包。使用Windows 8的计算机可以从Eclipse中查看该程序包,但无法导入它。

4 个答案:

答案 0 :(得分:5)

我遇到了类似的问题,这是由于我不正确地安装的方式(虽然这是在Windows 7机器上,而不是Windows 8)。对于我无法导入geometry子模块的初始安装,我使用以下命令进行了简单的安装:

pip install shapely

然而,在仔细阅读文档here之后,我发现对于Windows,需要使用可执行安装程序。该安装程序是一个轮盘文件,也需要由pip启动。所以我用以下方式卸载了第一个版本:

pip uninstall shapely

然后我通过滚轮文件启动了安装程序,如下所示:

pip install your/file/path/Shapely‑1.5.9‑cp27‑none‑win32.whl

请注意,您必须download与您应用程序包所使用的python版本规范相匹配的轮子。我有32位(win32)python 2.7(p27)所以上面的包是正确的。请注意,文件名中对32位或64位的引用是指python的版本,而不是Windows的版本。

答案 1 :(得分:5)

尝试以下一种方法,它为我解决了该问题(Windows 10):

conda install -c conda-forge shapely

shapely package docs

答案 2 :(得分:2)

试试这个:

from shapely.geometry import Polygon

这是文档列出的方式: http://toblerity.org/shapely/manual.html#polygons

答案 3 :(得分:0)

请勿使用任何内容,但python版本3.7
立即下载!

然后 转到Pycharm(这就是我正在使用的)并打开它, 然后下载您特定版本的文件 (从这里https://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely) 我的是“ Shapely-1.6.4.post1-cp37-cp37m-win_amd64.whl”

(如上所示,分别是版本3.7(37)和Windows(64))

现在,将新下载的文件复制并粘贴到PyCharm文件夹中的工作位置。对我来说是: C:\ Users \ lewis \ PycharmProjects \ Project1 \ NewProject

然后,您应该在PyCharm本身以及放置位置中看到新复制的文件。

现在 右键单击pycharm中的文件 “ Shapely-1.6.4.post1-cp37-cp37m-win_amd64.whl” 然后点击“在终端中打开” 然后输入: pip安装Shapely-1.6.4.post1-cp37-cp37m-win_amd64.whl

应该说成功

然后进入您的工作区并输入:

从shapely.geometry导入点开始 运行。 现在,它应该对所有人有效! 请记住,这将仅允许在此ONE环境中导入shape。因此,如果您在其他地方使用,必须将整齐的文件复制到新的文件夹位置。

规格 请记住,我正在使用Windows 10,Python解释器版本37,PyCharm,Virutalenv环境类型,(还)请确保在设置中您确实在python 37解释器中,而不是在conda环境中。