脚本将从XML文件夹中选择xml文件并解析它,当我直接运行.py文件时,它运行良好。但是,当我使用.bat文件调用.py时,我遇到了错误。
XML.bat
@ECHO OFF
REM A batch script to execute a Python script
SET PATH=%PATH%;C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Python 3.6
py GET_XML.py
PAUSE
用于在xml文件夹下获取文件名的Python代码段
import os
pathx = (os.path.dirname(__file__)+str('\\xml\\'))
list1 = os.listdir(pathx)
#GET Folder
#print(pathx)
paths = (''.join(map(str,list1)))
#GET Files inside Folder
#print(paths)
#Insert in xml parse
tree = ET.parse(paths)
root = tree.getroot()
错误的
目录结构
Python(folder)
+GET_XML.py
+XML.bat
+XML (folder)
+1231.xml
答案 0 :(得分:1)
使用os.path.join
加入路径更可靠,它将负责转义字符并选择系统的路径分隔符。
尝试使用以下行:
pathx = (os.path.join(os.path.dirname(__file__), 'xml'))