Excel文件模块

本文基本都是以Python3W为基础。

使用到的模块如下:

  • 1.操作xls格式的表格文件:

    • 读取:xlrd

    • 写入:xlwt

    • 修改(追加写入):xlutils

  • 2.操作xlsx格式的表格文件:

    • 读取/写入:openpyxl

案例

把文本文件转化为xlsx文件

  • 文本文件如下:

  • 代码如下:

# coding=UTF-8
import openpyxl

with open('textLog.txt', 'r', encoding="utf-8") as f:
    workbook = openpyxl.Workbook()
    sheet = workbook.active
    sheet.title = "virmach表"
    i = 1
    sheet.cell(row=i, column=1, value=str("时间"))
    sheet.cell(row=i, column=2, value=str("价格(美元/年)"))
    sheet.cell(row=i, column=3, value=str("架构"))
    sheet.cell(row=i, column=4, value=str("运行内存/MB"))
    sheet.cell(row=i, column=5, value=str("cpu数量"))
    sheet.cell(row=i, column=6, value=str("硬盘/G"))
    sheet.cell(row=i, column=7, value=str("流量/G"))
    sheet.cell(row=i, column=8, value=str("IP数量"))
    sheet.cell(row=i, column=9, value=str("地区"))
    i+=1
    for line in f:
        sheet.cell(row=i, column=1, value=str(line[line.index("时间:")+3:line.index("  ")]))
        sheet.cell(row=i, column=2, value=str(line[line.index("服务器价格:")+6:line.index("美元/年")]))
        sheet.cell(row=i, column=3, value=str(line[line.index("架构:")+3:line.index("  运行内存:")]))
        sheet.cell(row=i, column=4, value=str(line[line.index("运行内存:")+5:line.index("MB")]))
        sheet.cell(row=i, column=5, value=str(line[line.index("cpu数量:")+6:line.index("  硬盘:")]))
        sheet.cell(row=i, column=6, value=str(line[line.index("硬盘:")+3:line.index("G  流量:")]))
        sheet.cell(row=i, column=7, value=str(line[line.index("流量:")+3:line.index("G  IPV4数量:")]))
        sheet.cell(row=i, column=8, value=str(line[line.index("IPV4数量:")+7:line.index("  地区:")]))
        sheet.cell(row=i, column=9, value=str(line[line.index("地区:")+3:]))
        i+=1
    workbook.save("textLog.xlsx")
    print("xlsx格式表格写入数据成功!")
  • 转化结果如下: