Python如何读写Excel表格
短信预约 -IT技能 免费直播动态提醒
这篇文章主要介绍Python如何读写Excel表格,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
具体内容如下
python读取Excel表格:
import xlrd def read_excel(): # 打开文件 wb = xlrd.open_workbook(r'test.xls') # 获取所有sheet的名字 print(wb.sheet_names()) # 获取第二个sheet的表名 sheet2 = wb.sheet_names()[1] print("sheet2 = {}".format(sheet2)) # sheet1索引从0开始,得到sheet1表的句柄 sheet1 = wb.sheet_by_index(0) rowNum = sheet1.nrows colNum = sheet1.ncols print("rowNum = {}, colNum = {}".format(rowNum, colNum)) # 获取某一个位置的数据 c1_0 = sheet1.cell(1, 0).value print("c1_0 = {}".format(c1_0)) # 1 ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error print(sheet1.cell(1, 2).ctype) # 获取整行和整列的数据 # 第二行数据 row2 = sheet1.row_values(1) print("row2 = {}".format(row2)) # 第二列数据 cols2 = sheet1.col_values(2) print("cols2 = {}".format(cols2)) # python读取excel中单元格内容为日期的方式 # 返回类型有5种 print("for循环:") for i in range(rowNum): # if sheet1.cell(i, 2).ctype == 1: # d = xlrd.xldate_as_tuple(sheet1.cell_value(i, 2), wb.datemode) # print(date(*d[:3]), end='') print(sheet1.cell(i, 2)) # 输出如下:# ['我的第一个表', '第二个', '呵呵第三个']# sheet2 = 第二个# rowNum = 8, colNum = 3# c1_0 = w# 2# row2 = ['w', 's', 10.0]# cols2 = ['z', 10.0, 666.0, '2021年2月25日 02:06:25', 44252.0, 'x', 1, '']# for循环:# text:'z'# number:10.0# number:666.0# text:'2021年2月25日 02:06:25'# xldate:44252.0# text:'x'# bool:1# empty:''
python写入Excel表格:
import xlwt # 写入数据def write_excel(): f = xlwt.Workbook() # 创建表sheet1 sheet1 = f.add_sheet(u'sheet1', cell_overwrite_ok=True) # 如果是写入中文,则要用u'汉字'的形式。比如 sheet1.write(0,0, u'汉字') row0 = [u'业务', u'状态', u'北京', u'上海', u'广州', u'深圳', u'状态小计', u'合计'] column0 = [u'机票', u'船票', u'火车票', u'汽车票', u'其他'] status = [u'预定', u'出票', u'退票', u'业务小计'] for i in range(0, len(row0)): sheet1.write(0, i, row0[i], set_style("Time New Roman", 220, True)) # 合并单元格: # sheet1.write_merge(x, x + m, y, y + n, string, style) # x表示行,y表示列,m表示跨行个数,n表示跨列个数,string表示要写入的单元格内容,style表示单元格样式。 i, j = 1, 0 while i < 4 * len(column0): # 控制循环:每次加4 # 第一列 sheet1.write_merge(i, i + 3, 0, 0, column0[j], set_style('Arial', 220, True)) # 最后一列 sheet1.write_merge(i, i + 3, 7, 7) i += 4 j += 1 sheet1.write_merge(21, 21, 0, 1, u'合计', set_style("Time New Roman", 220, True)) i = 0 while i < 4 * len(column0): # 控制外层循环:每次加4 for j in range(0, len(status)): # 控制内层循环:设置每一行内容 sheet1.write(i + j + 1, 1, status[j]) i += 4 # 创建sheet2 sheet2 = f.add_sheet(u'sheet2',cell_overwrite_ok=True) row0 = [u'姓名', u'年龄', u'出生日期', u'爱好', u'关系'] column0 = [u'UZI', u'Faker', u'大司马', u'PDD', u'冯提莫'] # 生成第一行 for i in range(0, len(row0)): sheet2.write(0, i, row0[i], set_style('Times New Roman', 220, True)) # 生成第一列 for i in range(0, len(column0)): sheet2.write(i + 1, 0, column0[i], set_style('Times New Roman', 220, True)) f.save('data.xls')
执行上面这个写入excel表格的函数后,会生成data.xls文件。
写入表格1:
写入表格2:
以上是“Python如何读写Excel表格”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341