1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > python使用xlwt和xlrd对xls文件进行读取

python使用xlwt和xlrd对xls文件进行读取

时间:2019-04-16 19:31:42

相关推荐

python使用xlwt和xlrd对xls文件进行读取

用xlwt对xls文件进行写入

from xlwt import Workbookfrom random import randint

注意:不要奢求xlwt能够对一个已经存在的文件进行写操作,要打开已经存在的文件

先做加载,加载操作等价于读操作,但是xlwt模块只能写,没有任何读写能力.

所以说,xlwt只能从0到1进行文件的创建写操作

1.创建工作簿:Workbook()

wb = Workbook()

2.创建工作表:add_sheet()

注意:xlwt模块理解为你创建了某个表就是为这个表写内容

ws = wb.add_sheet('期末成绩')

3.写入内容

title = ['姓名', '数学', '语文', '英语']write(行号,列号,内容) --> 行号和列号从0开始for i in range(len(title)):ws.write(0, i, title[i])names = ['关羽', '张飞', '赵云', '马超', '黄忠']for nameIndex in range(len(names)):ws.write(nameIndex + 1, 0, names[nameIndex])for colIndex in range(1, 4):ws.write(nameIndex + 1, colIndex, randint(0, 100))

保存工作簿

确保工作簿中存在至少一个工作表,xlwt模块默认不会生成,需要自己创建

wb.save('一年级一班考试成绩.xls')

用xlrd对xls文件进行读取

from xlrd import open_workbook

1.加载已存在工作簿:open_workbook()

wb = open_workbook('一年级一班考试成绩.xls')

2.获取所有工作表的名字:sheet_names()

sheetList = wb.sheet_names()print(sheetList)

3.指定工作表

方式一:通过工作表名指定:sheet_by_name

sheet1 = wb.sheet_by_name('期末成绩')

方式二:通过下标指定:sheet_by_index

sheet2 = wb.sheet_by_index(0)print(sheet1 == sheet2)print(sheet1, sheet2)

4.读数据:

cell(行号,列号) --> 行列号下标是从0开始

value:获取指定单元格的值

print(sheet1.cell(0, 0)) # text:‘姓名’

print(sheet1.cell(0, 0).value) # 姓名

5.获取总的行列数:nrows、ncols

rows = sheet1.nrowscols = sheet1.ncolsprint(rows, cols)

6.读取所有信息

for row in range(rows):for col in range(cols):print(sheet1.cell(row, col).value)

注意:xls文件使用xlrd读取数据时整型会变为浮点型

注意:

一般在文件读操作后都需要关闭文件;写操作后需要保存关闭文件;

因为在文件被操作时是出于占用状态。除非执行关闭操作或者程序结束,

否则文件不会被关闭。

一般关闭文件使用close方法,保存关闭使用save方法

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。