我刚开始使用 vscode 和 arcgispro 的 python.exe。我的解释器设置为 arcgispro-py3-env\python.exe。
我希望能够在 vscode 中运行 python 代码,但我遇到了 pylance 的一些问题,它似乎无法识别 arcgis 函数或无法设置我的工作目录。
例如,当我尝试将工作目录设置为 env.workspace = wd
我收到以下错误: 无法为“GPEnvironment”类型分配成员“工作空间”Pylance(reportGeneralTypeIssues) 会员“工作空间”未知
或者当我尝试执行以下命令时 代码 arcpy.management.Project,出现以下错误: “management”不是模块“arcpy”的已知成员 皮兰斯(报告一般类型问题)
我不想使用 #type:ignore 修复,因为这会因为大量代码而变得很麻烦。
最简单的方法是明确添加
import arcpy.management
:
import arcpy
import arcpy.management # <- import arcpy.management explicitely
arcpy.management.CreateFeatureclass(
r"c:\temp", "buildings.shp", spatial_reference=arcpy.SpatialReference(4326))
原因很可能是
arcpy.management
不认识arcpy/__ini__.py
。
至于
arcpy.env.workspace
,arcpy.env
似乎是某种查看自动完成功能的字典类:
有了这些知识,您就可以使用
[]
运算符。例如:
import arcpy
import arcpy.management
arcpy.env["overwriteOutput"] = True # <- using [] operator instead
arcpy.management.CreateFeatureclass(
r"c:\temp", "buildings.shp", spatial_reference=arcpy.SpatialReference(4326))