请选择 进入手机版 | 继续访问电脑版

81路工程师大巴 - 81Lu.Net

 找回密码
 立即注册
搜索
查看: 227|回复: 0
收起左侧

python3 读写Excel

[复制链接]
发表于 2017-12-14 02:07 | 显示全部楼层 |阅读模式

来不及解释了,快上车,享受更多福利,轻轻松松做大牛!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
python3 读写Excel说明

  • 2007版以前的Excel(xls结尾的),需要使用xlrd读,xlwt写。
  • 2007版以后的Excel(xlsx结尾的),需要使用openpyxl来读写。
pypi的地址:openpyxl文档地址:举个栗子
  1. # -*- coding: utf-8 -*-
  2. # 读写2003 excel
  3. import xlrd
  4. import xlwt
  5. # 读写2007 excel
  6. import openpyxl
  7. def write03Excel(path):
  8.     wb = xlwt.Workbook()
  9.     sheet = wb.add_sheet("2003测试表")
  10.     value = [["名称", "价格", "出版社", "语言"],
  11.              ["如何高效读懂一本书", "22.3", "机械工业出版社", "中文"],
  12.              ["暗时间", "32.4", "人民邮电出版社", "中文"],
  13.              ["拆掉思维里的墙", "26.7", "机械工业出版社", "中文"]]
  14.     for i in range(0, 4):
  15.         for j in range(0, len(value[i])):
  16.             sheet.write(i, j, value[i][j])
  17.     wb.save(path)
  18.     print("写入数据成功!")
  19. def read03Excel(path):
  20.     workbook = xlrd.open_workbook(path)
  21.     sheets = workbook.sheet_names()
  22.     worksheet = workbook.sheet_by_name(sheets[0])
  23.     for i in range(0, worksheet.nrows):
  24.         row = worksheet.row(i)
  25.         for j in range(0, worksheet.ncols):
  26.             print(worksheet.cell_value(i, j), "\t", end="")
  27.         print()
  28. def write07Excel(path):
  29.     wb = openpyxl.Workbook()
  30.     sheet = wb.active
  31.     sheet.title = '2007测试表'
  32.     value = [["名称", "价格", "出版社", "语言"],
  33.              ["如何高效读懂一本书", "22.3", "机械工业出版社", "中文"],
  34.              ["暗时间", "32.4", "人民邮电出版社", "中文"],
  35.              ["拆掉思维里的墙", "26.7", "机械工业出版社", "中文"]]
  36.     for i in range(0, 4):
  37.         for j in range(0, len(value[i])):
  38.             sheet.cell(row=i+1, column=j+1, value=str(value[i][j]))
  39.     wb.save(path)
  40.     print("写入数据成功!")
  41. def read07Excel(path):
  42.     wb = openpyxl.load_workbook(path)
  43.     sheet = wb.get_sheet_by_name('2007测试表')
  44.     for row in sheet.rows:
  45.         for cell in row:
  46.             print(cell.value, "\t", end="")
  47.         print()
  48. file_2003 = 'data/2003.xls'
  49. file_2007 = 'data/2007.xlsx'
  50. write03Excel(file_2003)
  51. read03Excel(file_2003)
  52. write07Excel(file_2007)
  53. read07Excel(file_2007)
复制代码


发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请及时给回复的帖子【加分】

当帖子分数用完后,则主题自动结贴,楼主可以返回50%的帖子分数。如果选择【无满意答案结贴】,则结帖后不返分!

添加对方为好友并关注TA,或许会有意想不到的收获!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|81路工程师大巴 - 81Lu.Net ( 豫ICP备15009715号 )

GMT+8, 2018-6-23 06:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表