python - 通过加载第三方库xlrd/xlwt/xlsxwriter,来读写excel文件,不涉及图形操作

问题:

如何将结果汇总保存起来,并查看修改?

解决方案:

python结合excel可以对数据进行保存和增删改查。

基本流程:先将数据读取出来,然后在python下进行处理,再将处理结果写回文件。


讨论:

python需要加载第三方模块,且这些第三方模块没有统一。

python不能调用excel自带的函数进行处理,比如sum。。。。。。

python不能控制excel进行画图,只能进行简单的交互。如果要画图。。。。。。

python也可以结合mysql等数据库进行实现,这相对复杂些,但处理方式更多样。


# -*- coding: utf-8 -*-
import sys
from xlrd import open_workbook
##import xlrd
from xlwt import Workbook,Style
##import xlwt
import xlsxwriter

'''
用python来自动生成excel数据文件。
python处理excel文件主要是第三方模块库xlrd、xlwt、xluntils和pyExcelerator,
除此之外,python处理excel还可以用win32com和openpyxl模块
使用xlrd读取文件,使用xlwt生成Excel文件(可以控制Excel中单元格的格式)。
但是用xlrd读取excel是不能对其进行操作的;
而xlwt生成excel文件是不能在已有的excel文件基础上进行修改的,
如需要修改文件就要使用xluntils模块。
pyExcelerator模块与xlwt类似,也可以用来生成excel文件。
如果仅仅是要以表单形式保存数据,可以借助 CSV 格式(一种以逗号分隔的表格数据格式)进行处理,Excel 也支持此格式。
但标准的 Excel 文件(xls/xlsx)具有较复杂的格式,并不方便像普通文本文件一样直接进行读写,需要借助第三方库来实现。
它们有个缺陷,就是只能处理 xls 文件。
如果你想用新版本的 xlsx,可以考虑 openpyxl 和 xlsxwriter。

常用的方法:
    open_workbook 打开文件
    sheet_by_index 获取某一个表单
    sheets 获取所有表单
    cell_value 获取指定单元格的数据
特别要注意的是,选取读取表单时,要使用 sheet_by_index,
而在选取写入表单时,则要用 get_sheet。
'''


print 'START\n'

print 'xlwt\n'
wb = Workbook()
ws = wb.add_sheet('Type examples')
ws.row(0).write(0,u'\xa3')
ws.row(0).write(1,u'Text')
wb.save('types.xls')

print 'xlsxwriter\n'
workbook = xlsxwriter.Workbook('types.xlsx')
worksheet = workbook.add_worksheet()
worksheet.write('A1', 'Hello')
workbook.close()

print 'xlrd\n'
wb = open_workbook('types.xls')
for s in wb.sheets():
    print 'Sheet:', s.name
    for row in range(s.nrows):
        values = []
        for col in range(s.ncols):
            values.append(s.cell(row,col).value)
        print ','.join(values)
    print


print '\nEND'














你可能感兴趣的:(python-自动化测试)