我在python脚本中调用.py
来读取.xml
个文件。我的代码如下所示:
import os
import sys
import subprocess
subprocess.call(["python", "/home/sky/DBT/test.py", "--host=PC", "--file=/home/sky/data/myfile.xml"])
对于单个.xml
文件,它可以完美运行。但是,当我想在我的所有.py
文件上运行.xml
时,它不起作用。我试过这个循环:
for f in ("/home/sky/data/*.xml"):
subprocess.call(["python", "/home/sky/DBT/test.py", "--host=PC", "--file=f"])
但它不适用于我的目录中的所有.xml
个文件。我的代码出了什么问题?
谢谢
答案 0 :(得分:1)
尝试:
import os
import sys
import subprocess
path = "/home/sky/data/"
for filename in os.listdir(path): #Iterate Your DIR
if filename.endswith(".xml"): #Check if file is XML
subprocess.call(["python", "/home/sky/DBT/test.py", "--host=PC", "--file=/home/sky/data/{0}".format(filename)]) #Execute Command
答案 1 :(得分:0)
首先要做的事情:
解决您的问题,您应该做类似
的事情for filename in os.listdir(directory):
其中'directory'是您的文件夹,filename是您需要的文件。请注意,您应该将filename检查为xml文件。