Python3.x学习笔记[3]通过Py
从网上学到很多东西,xlrd支持python3.x,所以可以直接pip安装(至于PIP配置快捷方式和使用国内镜像加速下载以后和CX FREEZE以及SUBLIME TEXT3的配置一起发吧)。xlwt则不保持继续支持python3,官网也看到了,不过从pypi上搜索可以发现,出来了一个专门给py3准备的xlwt-future,用法一模一样,下载下来就连名字都一样。。。
而2007往后版本的excel多出来个xlsx文件类型,是为了使Excel能存入超过65535行数据(1048576),所以读写xlsx文件需要另一个库叫openpyxl,支持Python3.x
下面放上3个demo,省的看文档了
xlrd:
import xlrd
import re
wb = xlrd.open_workbook('1.xls') # 打开文件
sh = wb.sheet_by_name('考试成绩')
sh=wb.sheet_by_index(0)#第一个表
sheetNames = wb.sheet_names() # 查看包含的工作表
# 获得工作表的两种方法
sh = wb.sheet_by_index(0)
sh = wb.sheet_by_name(u'Sheet1')
# 单元格的值
cellA1 = sh.cell(0,0)
cellA1Value = cellA1.value
# 第一列的值
columnValueList = sh.col_values(0)
xlwt:
import xlwt
import re
wbk = xlwt.Workbook()
sheet1 = wbk.add_sheet('sheet 1')
sheet1.write(0,1,'test text')
# 修改内容警告解决方式:使用cell_overwrite_ok=True来创建worksheet:
# sheet2 = wbk.add_sheet('sheet 2', cell_overwrite_ok=True)
wbk.save('test.xls')
openpyxl读数据:
from openpyxl.reader.excel import load_workbook
wb = load_workbook('dd.xlsx')
sheetnames = wb.get_sheet_names()
ws = wb.get_sheet_by_name(sheetnames[0])
data_dic = {} # 建立存储数据的字典
#把数据存到字典中
for rx in range(ws.get_highest_row()):
temp_list = []
pid = ws.cell(row = rx,column = 0 ).value
w1 = ws.cell(row = rx,column = 1 ).value
w2 = ws.cell(row = rx,column = 2 ).value
w3 = ws.cell(row = rx,column = 3 ).value
w4 = ws.cell(row = rx,column = 4 ).value
temp_list = [w1,w2,w3,w4]
data_dic[pid] = temp_list
#打印字典数据个数
print (data_dic[10124020117])
其他内容看Http://blog.csdn.net/suofiya2008/article/details/6284208吧。。
相关文章