Python对excel文档的操作方法详解

yipeiwu_com7年前Python基础

本文实例讲述了Python对excel文档的操作方法。分享给大家供大家参考,具体如下:

pip安装python库:(linux命令行输入不要在idle输入)

pip install xlrd
pip install xlwd

1.获取excel中的数据

利用xlrd模块读取并简单操作excel文档:

1.打开excel文档

import xlrd
workbook = xlrd.open_workbook("test_case.xlsx")

2.获取所有的sheet表

sheet_name = workbook.sheet_names()

返回类型为所有sheet名字组成的列表list

3.获取指定的sheet表:

1)根据sheet的sheet_by_index属性索引获取

2)根据sheet的sheet_by_name属性名字获取

4.获取指定sheet的名字、行数、列数

调用指定sheet的name、nrows、ncols

5.获取sheet的内容

将每一个表单看出一个二维数组,按照行列坐标的方式访问指定内容

eg:

获取第0行第1列数据:sheet.row(0)[1].value  相当于第0行的第一个元素

获取第3行第2列数据:

sheet.col(2)[2].value
sheet.cell(2,2).value

读取excel的例子:

能够遍历一个excel文档的所有内容,并把它按照格式的横坐标方式打印出来。

注:任何的excel文档处理都可以通过这个代码的扩展实现!!!

import xlrd
file_path ='C:\\Users\Administrator\Desktop\test_case.xlsx'
workbook =xlrd.open_workbook(file_path) #打开excel工作簿
sheet =workbook.sheet_by_index(0)    #选择第一张sheet
for row inrange(sheet.nrows):      #第一个for循环遍历所有行
  print()
  for col in range(sheet.ncols):    #第二个for循环遍历所有列,这样就找到某一个xy对应的元素,就可以打印出来
    print("%7s"%sheet.row(row)[col].value,'\t',end='')

2.xlwt excel文档的生成

当我们通过程序获得数据希望保存为excel文档时,就可以用xlwt库完成。

1.创建工作簿

file = xlwt.open_Workbook() (调用xlwt的Workbook实现)

2.创建sheet

调用add_sheet增加表单,该函数有一个可选参数叫cell_overwrite_ok,当设置为true则可以覆盖之前的表单,设置为false时,表示新增而不能覆盖之前的表单

3.在每一个sheet中可以增加内容:

调用sheet的write函数属性实现;

常用write用法:write(x,y,string,style)

x:表示行

y:表示列  (x、y表示在sheet的哪个位置插入东西)

string:表示写进单元格的内容

style:表示写进单元格是什么类型,字符串、数字

例子:

参考:python中使用xlrd、xlwt操作excel

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python操作Excel表格技巧总结》、《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

推荐下python/ironpython:从入门到精通

最近无聊,下了个visual studio 2005的furture,发现里面多了对动态语言的支持.其实很早就想摆弄下python,正好是个机会.一开始是想学ironpython,但后来...

Python提取转移文件夹内所有.jpg文件并查看每一帧的方法

python里面可以将路径里面的\替换成/避免转义。 os.walk方法可以将目标路径下文件的root,dirs,files提取出来。后面对每个文件进行操作。 切片操作[:]判断是否为....

python跳过第一行快速读取文件内容的实例

Python编程时,经常需要跳过第一行读取文件内容。简单的做法是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作。 相应的Python代码如...

python 求1-100之间的奇数或者偶数之和的实例

如下所示: i=0 sum1=0 sum2=0 while i<=100: if i%2==0: sum1+=i else: sum2+=i i+=...

django 做 migrate 时 表已存在的处理方法

在开发web的时候,如果是以前已存在的项目,项目下载下来后,为了使用测试库的数据,会直接将整个测试库(如sqlite3)拿到本机来。这种情况下,如果执行的顺序不对,很容易在执行migra...