首页 > 解决方案 > 将文件名和文件路径打印到 csv

问题描述

我是编程新手,不确定实现最终目标的最佳方法。

我想创建一个脚本,它将遍历包含数百个系统命名的图像文件的目录树,然后将文件名和文件路径打印到 csv。

我了解如何使用 os.walk 列出所有图像但是我不确定如何最好地实现我的最终输出,例如我应该创建两个列表(一个带有文件名,一个带有文件路径)还是有更好的方法收集我的数据以导出到 csv?

path = '/Users/User/Photos/'

for root, dirs, files in os.walk(path):
    for x in files:
        file_path= os.path.join(root, x)
        print(file_path)
        file_name= os.path.basename(x)
        print(file_name)

有人可以指出将 file_name 和 file_path 对打印到 csv 的最佳方法吗?

标签: python

解决方案


你可以这样做:

import os


path = '/Users/User/Photos/'
with open('tree.csv', 'w') as fout:
    fout.write('file_name,file_path\n')
    for root, dirs, files in os.walk(path):
        for x in files:
            file_path= os.path.join(root, x)
            file_name= os.path.basename(x)
            fout.write('{},{}\n'.format(file_name, file_path))

将以如下tree.csv所示的名称创建一个 csv 文件:

在此处输入图像描述


推荐阅读