Writing List To Text File
本问题已经有最佳答案,请猛点这里访问。
这是我的代码的结尾:
1 2 3 4 5 6 7 8 9 10 | duplicates = [files for files in file_dict.values() if len(files) > 1] dupString = str(duplicates) text_file.write(" Duplicates Files: " + (dupString)) |
txt文件中的输出是:
1 | [['/Users/simon/Desktop/aF/file1.py', '/Users/simon/Desktop/aF/hidden/file2.py', '/Users/simon/Desktop/aF/hidden/file3.py']] |
我希望输出为:
1 2 3 | /Users/simon/Desktop/aF/file1.py /Users/simon/Desktop/aF/hidden/file2.py /Users/simon/Desktop/aF/hidden/file3.py |
我怎样才能做到这一点? 我尝试使用'.join(dupString)和' n'.join(dupString),但它只是使字符串值有空格或新行,而不是我想要的。
好的,我的理解是:
1 | duplicates = [files for files in file_dict.values() if len(files) > 1] |
返回文件列表的列表。 你的榜样是这样的:
1 | [['/Users/simon/Desktop/aF/file1.py', '/Users/simon/Desktop/aF/hidden/file2.py', '/Users/simon/Desktop/aF/hidden/file3.py']] |
在这种情况下,你需要做的是首先改变它只做一个字符串列表,你可以用
1 2 | from itertools import chain duplicates = chain.from_iterable([files for files in file_dict.values() if len(files) > 1]) |
那么这只是一个写作的问题:
1 2 3 4 5 6 7 | text_file.write(" Duplicates Files: %s" % ' '.join(duplicates)) |