尝试将目录列表输出到csv文件

时间:2018-11-07 15:55:15

标签: python directory

我一般对Python和程序设计还很陌生,所以希望您不要介意我问一个可能非常基本的问题。

我正在使用以下代码将目录列表输出到excel。

import os

a = open('H:\output.csv', "w")
for path, subdirs, files in os.walk(r'.'):
    for filename in files:
        f = os.path.join(path, filename)
        a.write(str(f) + os.linesep)

问题是某些文件名被切断,而不是完全包含在A列中,而后6个左右的字符被拆分到B列中。

此外,每行之间都有一个换行符,理想情况下,我希望摆脱掉。

最后,我想要第二列仅包含文件名而不是完整路径。

1 个答案:

答案 0 :(得分:0)

尝试一下。它用双引号(")包围文件路径和文件名,我认为这可以避免此问题。我还必须为输出文件指定编码,因为在我的系统路径上是Unicode,但文件的默认模式不是。

import os

a = open('dirfiles.csv', "w", encoding='utf8')
for path, subdirs, files in os.walk(r'.'):
    for filename in files:
        f = os.path.join(path, filename)
        a.write('"%s","%s"' % (f, filename) + os.linesep)