我刚开始使用 vscode 和 arcgispro 的 python.exe。我的口译员设置为
arcgispro-py3-env\python.exe
。
我希望能够在 vscode 中运行 python 代码,但我遇到了 pylance 的一些问题,它似乎无法识别 arcgis 函数或无法设置我的工作目录。
例如,当我尝试将工作目录设置为
env.workspace = wd
我收到以下错误:
Cannot assign member "workspace" for type "GPEnvironment"
Pylance(reportGeneralTypeIssues) Member "workspace" is unknown
或者当我尝试执行以下命令时 代码
arcpy.management.Project
,我收到以下错误:
"management" is not a known member of module "arcpy"
Pylance(reportGeneralTypeIssues)
我不想使用
#type:ignore fix
,因为这会因为大量代码而变得很麻烦。
最简单的方法是添加
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))