使用Python代码处理Excel-阿里云开发者社区

开发者社区> 吞吞吐吐的> 正文

使用Python代码处理Excel

简介:
+关注继续查看

转载说明:

原文地址: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)
复制代码

 

本文转自罗兵博客园博客,原文链接:http://www.cnblogs.com/hhh5460/p/4969850.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
mac上安装Homebrew及一些报错的处理
mac上安装Homebrew及一些报错的处理
21 0
Excel 中 Index 和 Match 方法的使用
MATCH函数(返回指定内容所在的位置) MATCH(lookup-value,lookup-array,match-type) lookup-value:表示要在区域或数组中查找的值,可以是直接输入的数组或单元格引用。
630 0
Excel中添加并使用宏实现批量更新数据
一、状况描述    当我们需要后台更新大量数据的时候,可以使用该功能。二、解決方案    (1)新建一个Excel文件,并另存为启用宏的Excel工作簿,扩展名为.xlsm。    (2)在Excel中添加按钮。
1123 0
MaxCompute(ODPS)上处理非结构化数据的Best Practice
随着MaxCompute(ODPS)2.0的上线,新增的非结构化数据处理框架也推出一系列的介绍文章,包括 MaxCompute上如何访问OSS数据, 基本功能用法和整体介绍,侧重介绍读取OSS数据进行计算处理; 本文:MaxCompute(ODPS)上处理非结构化数据的Best Practice。
4137 0
黑马程序员 五、异常处理和常用类)
Java帮帮-IT资源分享网  五、黑马程序员—异常处理和常用类 第五篇  1、异常 异常:就是不正常,是指程序在运行时出现的不正常情况。其实就是程序中出现的问题。 这个问题按照面向对象思想进行描述,并封装成了对象。因为问题的产生有产生的原因、有 问题的名称、有问题的描述等多个属性信息存在。当出现多属性信息最方便的方式就是将这 些信息进行封装。异常
1454 0
C#.net事务处理代码
public   void   RunSqlTransaction(string   myConnString)       {             SqlConnection   myConnection   =   new   SqlConnection(myConnString);             myConnection.
690 0
4852
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载