我的下一个.txt文件为
Red Blue Green, 1354,8676,38
------------------------------
Yellow Or,ange Black
TU CD CL
0.26 0.265 0.25
-------------------------------
我需要阅读。为此,我使用pd.read_csv()
并避免使用skipfooter = 2
参数的最后两行。所以,我有:
path_file1 = pathlib.Path.cwd() / ("folder1") / ("file1.txt")
df_folder1 = pd.read_csv(str(path_file1), engine = 'python', index_col = False, skipfooter = 2)
然后,我想使用.to_csv()
将所有信息粘贴到其他文件中:
path_file2 = pathlib.Path.cwd() / ("folder1") / ("file2.txt")
df_folder2 = df_folder1.to_csv(str(path_file2), index = False, quoting=csv.QUOTE_NONE)
但是,我最终得到以下结果:
Red Blue Green, 1354,8676,38
------------------------------,,,
Yellow Or,ange Black,,
TU CD CL,,,
因此我无法消除每行末尾的逗号,因此省略了空行。是否可以使用to_csv()
来实现?我应该在此线程中使用csv.writer()
吗?
write csv file with double quotes for particular column not working是否有可能指定换行符?
答案 0 :(得分:1)
您面临的问题是csv是表格数据的表示形式。
在计算中,逗号分隔的值文件是带分隔符的文本文件 使用逗号分隔值。 CSV文件存储表格数据 以纯文本格式。文件的每一行都是一个数据记录。每条记录 由一个或多个字段组成,用逗号分隔。使用 作为字段分隔符的逗号是此文件名称的来源 格式。 https://en.wikipedia.org/wiki/Comma-separated_values
行尾的其他逗号表示该列中的空字段。即使我不确定您提出的要求是不可能的,我也会认为这超出了规格。
因此,我建议,如果您真正想要的是从该文件中删除最后一行,请使用
读取文件with open('file') as f:
for i in range(len(f.readlines()) - 2):
# do what ever you want
并将其写回到文件中。