使用Python代码处理Excel

简介: 转载说明: 原文地址:http://my.oschina.net/alazyer/blog/223354 原文有十处左右的错误,修正后转载于此。 经验证,python 3.4.3下可用。请各位朋友明察。

转载说明:

原文地址:http://my.oschina.net/alazyer/blog/223354

原文有十处左右的错误,修正后转载于此。

经验证,python 3.4.3下可用。请各位朋友明察。

 

 

使用Python操作Excel不是什么难事,需要用到两个Lib, python-xlrd,python-xlwt

安装

pip install xlrd xlwt
支持xls,xlsx格式

写Excel

创建一个文件
workbook = xlwt.Workbook(encoding='utf-8')
增加一个表单
booksheet = workbook.add_sheet('Sheet 1')
增加一行
row = booksheet.row(i)
增加一列
col = booksheet.col(j)
为某个单元格赋值
booksheet.write(i, j, 'Test')
row.write(j, 'Test')
col.write(i, 'Test')
注意: 在add_sheet时, 置参数cell_overwrite_ok=True, 可以覆盖原单元格中数据。
cell_overwrite_ok默认为False, 覆盖的话, 会抛出异常.

import xlwt
workbook = xlwt.Workbook(encoding='utf-8')
booksheet = workbook.add_sheet('Sheet 1', cell_overwrite_ok=True)
workbook.add_sheet('Sheet 2')
DATA = (('学号', '姓名', '年龄', '性别', '成绩'),
             (1001, 'AAAA', 23, '', 98),
             (1002, 'BBBB', 21, '', 90),
             (1003, 'CCCC', 24, '', 100),
             (1004, 'DDDD', 22, '', 86),
             (1005, 'EEEE', 25, '', 88),)

for i, row in enumerate(DATA):
    for j, col in enumerate(row):
        booksheet.write(i, j, col)
booksheet.col(0).width=10
workbook.save('成绩单.xls')

 

读Excel

获取一个文件
workbook = xlrd.open_workbook('成绩单.xls')
获取文件中表单数量
workbook.nsheets
获取一个表单
workbook.sheets()[i],
workbook.sheet_by_index(i)
workbook.sheet_by_name(u'Sheet1')
获取行,列数
sheet.nrows, sheet.ncols
获取整行,列数据
sheet.row(i), sheet.col(j)
获取某个单元格数据
sheet.cell(i, j).value
sheet.row(i)[j].value
sheet.col(j)[i].value

import xlrd
workbook = xlrd.open_workbook('成绩单.xls')
print("There are {} sheets in the workbook".format(workbook.nsheets))
for booksheet in workbook.sheets():
    print(booksheet.name)
    for row in range(booksheet.nrows):
        for col in range(booksheet.ncols):
            print(xlrd.cellname(row, col))
            print(booksheet.cell(row, col).value)

 

目录
相关文章
|
3月前
|
存储 算法 调度
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
187 26
|
2月前
|
测试技术 Python
Python装饰器:为你的代码施展“魔法”
Python装饰器:为你的代码施展“魔法”
240 100
|
2月前
|
开发者 Python
Python列表推导式:一行代码的艺术与力量
Python列表推导式:一行代码的艺术与力量
389 95
|
3月前
|
Python
Python的简洁之道:5个让代码更优雅的技巧
Python的简洁之道:5个让代码更优雅的技巧
240 104
|
3月前
|
开发者 Python
Python神技:用列表推导式让你的代码更优雅
Python神技:用列表推导式让你的代码更优雅
437 99
|
2月前
|
缓存 Python
Python装饰器:为你的代码施展“魔法
Python装饰器:为你的代码施展“魔法
153 88
|
2月前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。
|
3月前
|
设计模式 人工智能 API
AI智能体开发实战:17种核心架构模式详解与Python代码实现
本文系统解析17种智能体架构设计模式,涵盖多智能体协作、思维树、反思优化与工具调用等核心范式,结合LangChain与LangGraph实现代码工作流,并通过真实案例验证效果,助力构建高效AI系统。
438 7
|
3月前
|
存储 大数据 Unix
Python生成器 vs 迭代器:从内存到代码的深度解析
在Python中,处理大数据或无限序列时,迭代器与生成器可避免内存溢出。迭代器通过`__iter__`和`__next__`手动实现,控制灵活;生成器用`yield`自动实现,代码简洁、内存高效。生成器适合大文件读取、惰性计算等场景,是性能优化的关键工具。
241 2
|
3月前
|
JSON 缓存 开发者
淘宝商品详情接口(item_get)企业级全解析:参数配置、签名机制与 Python 代码实战
本文详解淘宝开放平台taobao.item_get接口对接全流程,涵盖参数配置、MD5签名生成、Python企业级代码实现及高频问题排查,提供可落地的实战方案,助你高效稳定获取商品数据。

推荐镜像

更多