【问题标题】:convert a tsv file to xls/xlsx using python使用 python 将 tsv 文件转换为 xls/xlsx
【发布时间】:2013-05-27 00:02:28
【问题描述】:

我想把一个tsv格式的文件转换成xls/xlsx..

我尝试过使用

os.rename("sample.tsv","sample.xlsx")

但是要转换的文件已损坏。还有其他方法吗?

【问题讨论】:

    标签: python xls file-conversion tsv


    【解决方案1】:

    这是一个使用XlsxWriter 和核心 csv 模块将 TSV 转换为 XLSX 的简单示例:

    import csv
    from xlsxwriter.workbook import Workbook
    
    # Add some command-line logic to read the file names.
    tsv_file = 'sample.tsv'
    xlsx_file = 'sample.xlsx'
    
    # Create an XlsxWriter workbook object and add a worksheet.
    workbook = Workbook(xlsx_file)
    worksheet = workbook.add_worksheet()
    
    # Create a TSV file reader.
    tsv_reader = csv.reader(open(tsv_file, 'rb'), delimiter='\t')
    
    # Read the row data from the TSV file and write it to the XLSX file.
    for row, data in enumerate(tsv_reader):
        worksheet.write_row(row, 0, data)
    
    # Close the XLSX file.
    workbook.close()
    

    【讨论】:

    • 在python3中,更改为csv.reader(open(tsv_file,'rt'),delimiter="\t")时有效
    【解决方案2】:

    你需要:

    1. tsv文件中读取数据。

    2. 将它转换成你想要的样子。

    3. 将它们写入 Excel 文件,openpyxl 对应 xlsxxlwt 对应 xls

    【讨论】:

      【解决方案3】:
      import csv
      from xlsxwriter.workbook import Workbook
      
      # Add some command-line logic to read the file names.
      tsv_file = 'sample.tsv'
      xlsx_file = 'sample.xlsx'
      
      # Create an XlsxWriter workbook object and add a worksheet.
      workbook = Workbook(xlsx_file)
      worksheet = workbook.add_worksheet()
      
      # Create a TSV file reader.
      tsv_reader = csv.reader(open(tsv_file,'rt'),delimiter="\t")
      
      # Read the row data from the TSV file and write it to the XLSX file.
      for row, data in enumerate(tsv_reader):
          worksheet.write_row(row, 0, data)
      
      # Close the XLSX file.
      workbook.close()
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-22
        • 2016-07-11
        • 1970-01-01
        • 1970-01-01
        • 2021-01-27
        相关资源
        最近更新 更多