无效语法错误并查看目录及其子目录

Invalid Syntax Error and looking through a directory and its subdirectories

我是使用 python 编码的超级新手。对于我的工作,我们有需要批量导出的 ESRI 地图 (.MXD)。问题是每张地图都在主文件夹中它自己的文件夹中。我找到了一个代码来批量导出我的地图,如果它们在同一个目录中(尽管它一直给出无效语法错误)。我还找到了一段代码,应该可以查看所有子目录,但我不知道如何将它与第一个代码结合起来。

导出我的地图代码(arcpy 是 ArcMap 使用 python 从我收集到的):

import arcpy, os

arcpy.env.workspace = ws = r”C:\Users\Me\Desktop\Burn_Zones” #This is where I am getting that invalid syntax error!

mxd_list = arcpy.ListFiles("*.mxd")

for mxd in mxd_list:

        current_mxd = arcpy.mapping.MapDocument(os.path.join(ws, mxd))
    pdf_name = mxd[:-4] + ".pdf"
    arcpy.mapping.ExportToPDF(current_mxd, pdf_name)
del mxd_list

这是第一个问题。 查看所有子目录的代码是:

for root, dirs, files in os.walk(path):
for name in files:
    if name.endswith((".html", ".htm")):

我认为我不需要第二个 for 循环,因为第一个代码应该为我获取所有 .mxds。那么我只需要 mxd_list = arpy.ListFiles(".mxd") 代码行上方的第一个 for 循环和块吗?

哦,还有那个错误行。我已经尝试使用 C:\ 和 Burn_Zones\ 的路径名以及它们的所有组合。那没有用,这是我唯一能想到的。

非常感谢大家的帮助!

您在路径中使用了错误的引号。这是你的错误吗?

arcpy.env.workspace = ws = r”C:\Users2708\Desktop\Burn_Zones”
                            ^
SyntaxError: invalid character in identifier

将 "quotes" 替换为实际的双引号。

r”C:\Users2708\Desktop\Burn_Zones”  # wrong
r"C:\Users2708\Desktop\Burn_Zones"  # correct