在Python IDLE中导入arcpy时出现问题


9

我想在我的python代码中使用arcpy。我可以通过ARCGIS桌面python控制台导入它。但是我无法将其导入Python IDLE。我收到以下错误

Traceback (most recent call last):

File "C:\Python26\lib\site-packages\win32com\client\dynamic.py", line 246, in 
__getitem__raise TypeError("This object does not support enumeration") 

我在我的python路径中提到了以下文件夹。

C:\Program Files\ArcGIS\Desktop10.0\arcpy;
C:\Program Files\ArcGIS\Desktop10.0\arcpy\arcpy;
C:\Python26\ArcGIS10.0\Tools\Scripts

我发现有人提到同样的问题。

导入arcpy会产生“ TypeError:此对象不支持枚举”

用户说这是由于以下原因:

我在同一目录中为Arcgis 9和10编写了代码。关于导入arcpy中的初始化逻辑的一些知识,找到了用于将arcgis 9.3和python 2.6放在一起时使用的自定义arcgisscripting.py。

我只有ARCGIS 10,我不知道arcpy如何查找其模块。


您是否只是在IDLE的Python shell中输入import arcpy来看到此错误?还是只是简单地在(IDLE的)Python窗口中输入import arcpy并使用“运行模块”来查看它?您是否必须使用长PYTHONPATH?我只是将PYTHONPATH = C:\ Python26和C:\ Python26 \ ArcGIS10.0作为我的PATH变量的一部分。
PolyGeo

是的,我只是在IDLE窗口中导入了模块。我也尝试在ARCGIS中使用此python解释器,导入了arpy模块。我仍然收到错误。
Karthik Bharadwaj 2012年

1
您是否必须使用长PYTHONPATH?我只是将PYTHONPATH = C:\ Python26和C:\ Python26 \ ArcGIS10.0作为我的PATH变量的一部分。
PolyGeo

1
Windows解决方案->重新安装arcgis和python。
阿拉贡

1
我想了解基本问题是如何产生的,在最坏的情况下,我认为我必须都取消安装这两个问题。@PolyGeo。我更改了path和python path变量。但是问题消除了。
Karthik Bharadwaj 2012年

Answers:


9

解决您的问题PYTHONPATH。从ArcGIS帮助中:

使用import语句时,Python在以下位置(和以下顺序)中查找与该名称匹配的模块:

  1. PYTHONPATH系统环境变量中指定的路径
  2. 一组标准Python文件夹(当前文件夹, C:\python2x\libC:\python2x\Lib\site-packages,等等)
  3. .pth在1和2中找到的任何文件中指定的路径

有关此的更多信息,请参见以下内容:http : //docs.python.org/install/index.html#modifying-python-s-search-path。如果尚未安装Python 2.6,则ArcGIS 10.0产品的安装将安装Python 2.6。安装还会将文件Desktop10.pthEngine10.pthServer10.pth)添加到中python26\Lib\site-packages。该文件的内容为两行,其中包含系统的ArcGIS安装的arcpy和bin文件夹的路径。这两个路径是在Python 2.6版中成功导入ArcPy所必需的。使用import语句时,Python引用系统的PYTHONPATH环境变量来定位模块文件。此变量设置为目录列表。


小费:

如果导入ArcPy会产生以下两个错误之一,则找不到所需的模块: ImportError: No module named arcpy ImportError: No module named arcgisscripting

要解决此问题,请使用Windows资源管理器浏览到该python26\Lib\site-packages文件夹,然后添加或编辑Desktop10.pth文件。该文件应包含以下两行(如果不匹配,则更正为系统路径):

  • C:\Program Files\ArcGIS\Desktop10.0\arcpy
  • C:\Program Files\ArcGIS\Desktop10.0\bin

谢谢大家 就像@Aragon一样,我重新安装了ARCGIS Desktop和Python。将Desktop.pth文件放到位,并且可以正常工作。
Karthik Bharadwaj 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.