我们来详细讲解一下如何使用Python对文件夹进行遍历,并将结果存储为XML格式的文件。
1. Python遍历文件夹
Python自带了os模块,可以方便的遍历文件夹。我们可以使用os.walk()方法来列举一个路径下的所有文件和子文件夹。
示例代码如下:
import os
for root, dirs, files in os.walk("/path/to/dir"):
for file in files:
print(os.path.join(root, file))
在这个示例中,我们传入一个路径 /path/to/dir
,然后通过 os.walk()
遍历这个路径和子文件夹。在每个遍历到的文件夹中,os.walk()
方法会返回当前文件夹的路径 root
、子文件夹名称 dirs
和文件列表 files
。
我们通过一个双重for循环,遍历了每个文件夹下所有的文件。 os.path.join()
方法可以将当前文件夹的路径和文件名合并成一个完整的路径名。
2. Python将数据存储到XML文件
Python自带了XML库,可以方便的将数据存储为XML格式的文件。我们可以使用xml.etree.ElementTree库来创建一个XML文档,并在其中添加数据。
示例代码如下:
import xml.etree.ElementTree as ET
root = ET.Element("root")
doc = ET.SubElement(root, "doc")
ET.SubElement(doc, "field1", name="blah").text = "some value1"
ET.SubElement(doc, "field2", name="asdfasd").text = "some vlaue2"
tree = ET.ElementTree(root)
tree.write("filename.xml")
在这个示例中,我们首先创建了一个XML文档对象 root
,并且从 root
索引中创建了一个子元素 doc
,然后使用 ET.SubElement()
方法在 doc
中添加两个带有属性的元素 (field1,field2)
。
最后,我们将XML文档对象 root
写入了名为 filename.xml
的XML文件中。
3. 将Python遍历文件夹和存储为XML文件结合起来
现在我们知道了如何遍历文件夹和将数据存储为XML格式的文件,我们可以将它们结合起来,将遍历到的文件及其信息存储到XML文件中。
示例代码如下:
import os
import xml.etree.ElementTree as ET
root = ET.Element("root")
doc = ET.SubElement(root, "doc")
for root, dirs, files in os.walk("/path/to/dir"):
for file in files:
file_info = ET.SubElement(doc, "file_info")
ET.SubElement(file_info, "file_path").text = os.path.join(root, file)
ET.SubElement(file_info, "file_size").text = str(os.path.getsize(os.path.join(root, file)))
tree = ET.ElementTree(root)
tree.write("filename.xml")
在这个示例中,我们首先创建了一个XML文档对象 root
,并且从 root
索引中创建了一个子元素 doc
。然后,我们使用 os.walk()
方法遍历了指定路径下所有的文件和子文件夹,遍历到每个文件时,我们创建了一个名为 file_info
的子元素,并为 file_info
添加了两个子元素 file_path
和 file_size
,分别表示文件的路径和文件的大小。
最后,我们将XML文档对象 root
写入了名为 filename.xml
的XML文件中。
总结起来,我们只需要将以上两个示例结合起来,即可实现将文件夹的遍历结果存储为 XML 格式的文件。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python目录操作之python遍历文件夹后将结果存储为xml - Python技术站