Python 从更新的脚本创建Arcmap工具

Python 从更新的脚本创建Arcmap工具,python,arcmap,Python,Arcmap,我第一次尝试使用脚本为ArcMap创建工具,但在运行脚本时不断收到错误消息。以下是我的代码: import arcpy arcpy.env.overwriteOutput = True In_Buff_Feature = arcpy.GetParameterAsText(0) Out_Buff = arcpy.GetParameterAsText(1) Buffer_Dist = arcpy.GetParameter(2) arcpy.buffer_analysis(In_Buff_Fe

我第一次尝试使用脚本为ArcMap创建工具,但在运行脚本时不断收到错误消息。以下是我的代码:

import arcpy

arcpy.env.overwriteOutput = True


In_Buff_Feature = arcpy.GetParameterAsText(0)
Out_Buff = arcpy.GetParameterAsText(1)
Buffer_Dist = arcpy.GetParameter(2)

arcpy.buffer_analysis(In_Buff_Feature, Out_Buff, Buffer_Dist,)
我收到的错误是:

Traceback (most recent call last):
File "C:\Users\Michaelf\Desktop\GEOG M173\Week_3_Lab.py", line 31, in <module>
arcpy.buffer_analysis(In_Buff_Feature, Out_Buff, Buffer_Dist,)
AttributeError: 'module' object has no attribute 'buffer_analysis'
回溯(最近一次呼叫最后一次):
文件“C:\Users\Michaelf\Desktop\GEOG M173\Week\u 3\u Lab.py”,第31行,在
arcpy.buffer\u分析(In\u Buff\u特性、Out\u Buff、buffer\u Dist)
AttributeError:“模块”对象没有“缓冲区分析”属性
任何反馈都将不胜感激!!
谢谢

arcpy.GetParameterAsText(0)函数将从ArcGIS工具读取输入参数

在脚本编写和调试期间,最简单的方法是硬编码函数的输入变量,以验证函数是否正常工作。一旦工具(本质上)符合您的需要,就在ArcMap中创建工具箱和脚本工具

要从“工具执行”对话框接受输入参数,您需要在创建脚本工具时指定它们(并将代码更改为接受
GetParameterAsText
输入)。最好的演练就是ArcGIS资源中心


另一个注意事项是:ArcPy函数区分大小写,因此请始终检查拼写是否正确

arcpy.buffer_analysis(In_Buff_Feature, Out_Buff, Buffer_Dist,) # wrong
arcpy.Buffer_analysis(In_Buff_Feature, Out_Buff, Buffer_Dist) # right

您在哪里运行代码?感谢您的反馈,但我确实分配了所有三个变量,但仍然得到错误:
在\u layer\u或\u view=arcpy.GetParameterAsText(0)selection\u type=arcpy.GetParameterAsText(1)Where\u子句=arcpy.GetParameterAsText(2)
发布完整的代码有助于故障排除。您能否编辑您的问题以包括该问题,以及ArcMap中工具参数设置的屏幕截图?我已经更新了代码,我很抱歉没有完全理解您的问题。ArcMap中工具的参数设置是创建新工具并在ArcMap中定义参数?是--在工具设置中定义参数时,参数的数据类型是什么。有时我在创建工具时会遇到这个问题。(我只是试图消除可能的原因。)我没有设置参数,因为这是我一直无法做到的。我是否要浏览目录并选择“新建”,然后创建一个新的工具箱