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

时间:2016-12-07 21:37:38

标签: python syntax arcmap

我是使用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 \以及它们的所有组合尝试了路径名。这不起作用,这是我唯一能想到的。

非常感谢y'所有的帮助!

1 个答案:

答案 0 :(得分:1)

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

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

用实际双引号替换这些“引号”。

r”C:\Users\162708\Desktop\Burn_Zones”  # wrong
r"C:\Users\162708\Desktop\Burn_Zones"  # correct