在Python中将.txt文件转换为.xls

Spl*_*lin 1 python csv xls text-files

我有一个真正的csv格式的文件,但作为.txt传递给我.我需要将此文件转换为.xls格式,以便将其上传到Google文档中.目前我有下面的代码,但它正在将文件中的所有内容吐出到第一个单元格中,而不是为每个逗号值分解不同的单元格.有谁知道如何解决这个问题?

谢谢!

import os

fin = open(r"C:\Users\JohnDoe\Downloads\Report.txt", "r")
data_list = fin.readlines()
fin.close() # closes file

fout = open(r"C:\Users\JohnDoe\Desktop\Report.xls", "w")
fout.writelines(data_list)
fout.flush()
fout.close()
Run Code Online (Sandbox Code Playgroud)

agf*_*agf 6

只需将其重命名为.xls不会将其转换为Excel电子表格.但无论如何,为什么要将其转换为.xls仅将其上传到Google文档?

如果它是a .csv,只需将文件重命名为.csv并上传它,它就会被正确地检测为电子表格.

用途os.rename:

import os

os.rename("C:\Users\JohnDoe\Downloads\Report.txt", 
          "C:\Users\JohnDoe\Downloads\Report.cvs")
Run Code Online (Sandbox Code Playgroud)

如果你真的需要用Python做.

如果需要从文件中获取实际行而不是行:

from csv import reader

for row in reader(open(r"C:\Users\JohnDoe\Downloads\Report.txt", 'rb')):
    # do something with row
Run Code Online (Sandbox Code Playgroud)

将为您提供每行的单元格列表.

如果你真的需要一个Excel电子表格的工作,看到http://www.python-excel.org/xlwt包.