AttributeError: '模块'对象没有'Describe'属性
我刚开始学习Python。为了上课,我在网上查了一些新材料,复制粘贴了一些例子来看看它们是怎么工作的。所以,我从这个网站(https://www.e-education.psu.edu/geog485/node/54)上复制了关于“GIS模型中的循环”的代码。
import arcpy
try:
arcpy.env.workspace = "C:\Users\dan and kathryn\Desktop\school\programming\Lesson1"
fcList = arcpy.ListFeatureClasses()
for featureClass in fcList:
arcpy.CopyFeatures_management (featureClass, "C:\Users\dan and kathryn\Desktop\school\programming\Lesson 2\PracticeData/" + featureClass)
except:
print "Script failed to complete"
print arcpy.GetMessages(2)
这是我遇到的错误信息:
Traceback (most recent call last):
File "C:\Python27\ArcGIS10.1\Lib\site-packages\pythonWin\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 325, in RunScript
exec codeObject in __main__.__dict__
File "C:\Users\dan and kathryn\Desktop\loops_gis.py", line 1, in <module>
import arcpy
File "C:\Users\dan and kathryn\Desktop\arcpy.py", line 5, in <module>
desc = arcpy.Describe(featureClass)
AttributeError: 'module' object has no attribute 'Describe'
我联系了我的老师,他写了一段代码发给我,但我们写的代码完全一样。所有的反斜杠、缩进,除了文件夹的位置都一样。我不知道发生了什么,但他怀疑这个问题可能不仅仅是我代码里的问题。
我已经修改了pythonWin中的site-packages文件夹,现在里面包含:
# .pth file for the PyWin32 extensions
win32
win32\lib
Pythonwin
C:\Program Files (x86)\ArcGIS\Desktop10.1\bin
C:\Program Files (x86)\ArcGIS\Desktop10.1\arcpy
C:\Program Files (x86)\ArcGIS\Desktop10.1\ArcToolbox\Scripts
我不太明白发生了什么,为什么“Describe”会出现在问题中。
2 个回答
1
每次写路径字符串的时候,记得用 r"路径字符串" 这种写法。这样可以解决反斜杠和斜杠的问题。当你需要连接多个路径的时候,记得使用 'os' 模块。
0
这是我需要更改的内容(都是在反斜杠里面,我之前完全不知道):
arcpy.env.workspace = "C:/Users/dan and kathryn/Desktop/school/programming/Lesson1"
还有
arcpy.CopyFeatures_management (featureClass, "C:\Users\dan and kathryn\Desktop\school\programming\Lesson 2\PracticeData/" + featureClass)