• 售前

  • 售后

热门帖子
入门百科

Python操纵Excel的学习条记

[复制链接]
123457015 显示全部楼层 发表于 2021-10-25 19:00:01 |阅读模式 打印 上一主题 下一主题
目录


  • 用 xlrd 模块读取 Excel

    • xlrd 安装
    • xlrd 常用函数

  • 用 xlwt 模块写入 Excel

    • xlrd 安装
    • 创建工作簿并添加工作表
    • 调解单位格样式
    • 填充数据
    • 写入数据
    • 插入图片
    • 保存文件


用 xlrd 模块读取 Excel



xlrd 安装

cmd 中输入
  1. pip install xlrd
复制代码
即可安装
  1. xlrd
复制代码
模块
若失败请自行百度”python配置情况变量“

xlrd 常用函数

打开,加载工作簿
  1. import xlrd
  2. data = xlrd.open_workbook("data1.xls") # 打开并加载,返回工作簿对象
  3. print(data.sheet_loaded(0)) # 是否加载完成
  4. data.unload_sheet(0) # 卸载
  5. print(data.sheet_loaded(0))
复制代码

获取工作表
  1. import xlrd
  2. data = xlrd.open_workbook("data1.xls") # 打开并加载,返回工作簿对象
  3. print(data.sheets()) # 获取全部工作表
  4. print(data.sheets()[0]) # 下标访问
  5. print(data.sheet_by_name("Sheet1")) # 根据名字获取工作表 大小写严格!
  6. print(data.sheet_by_index(0)) # 根据下标获取工作表
  7. print(data.sheet_names()) # 获取所有工作表的name
  8. print(data.nsheets) # 获取工作表数量
复制代码

Excel 行操纵与列操纵
  1. import xlrd
  2. data = xlrd.open_workbook("data1.xls") # 打开并加载,返回工作簿对象
  3. # 操作 Excel 行
  4. sheet = data.sheet_by_index(0) # 获取第一个工作表
  5. print(sheet.nrows) # 获取工作表行数
  6. print(sheet.row(15)) # 该行单元格对象组成的列表
  7. print(sheet.row_types(15)) # 获取单元格的数据类型
  8. # type: 0 empty,1 string,2 number, 3 date,4 boolean, 5 error
  9. print(sheet.row(15)[5].value) # 获取单元格内容
  10. print(sheet.row_values(15)) # 获取整行单元格内容
  11. print(sheet.row_len(15)) # 获取单元格长度
  12. # 操作 Excel 列
  13. sheet = data.sheet_by_index(1) # 获取第一个工作表
  14. print(sheet.ncols) # 获取工作表列数
  15. print(sheet.col(2)) # 该列单元格对象组成的列表
  16. print(sheet.col_types(15)) # 获取单元格的数据类型
  17. # type: 0 empty,1 string,2 number, 3 date,4 boolean, 5 error
  18. print(sheet.col(15)[5].value) # 获取单元格内容
  19. print(sheet.col_values(15)) # 获取整列单元格内容
复制代码

Excel 单位格操纵
  1. import xlrd
  2. data = xlrd.open_workbook("data1.xls") # 打开并加载,返回工作簿对象
  3. # 操作 Excel 单元格
  4. sheet = data.sheet_by_index(0)
  5. print(sheet.cell(15, 7)) # 获取单元格
  6. # 获取单元格的数据类型
  7. print(sheet.cell_type(15, 7))
  8. print(sheet.cell(15,7).ctype)
  9. # 获取单元格内容
  10. print(sheet.cell_value(15, 7))
  11. print(sheet.cell(15,7).value)
复制代码


用 xlwt 模块写入 Excel

xlrd 安装

cmd 中输入
  1. pip install xlwt
复制代码
即可安装
  1. xlwt
复制代码
模块

创建工作簿并添加工作表
  1. import xlwt
  2. # 创建工作簿
  3. wb = xlwt.Workbook()
  4. # 添加工作表
  5. ws = wb.add_sheet("绩点")
复制代码
调解单位格样式
  1. # 设置单元格样式
  2. titlestyle = xlwt.XFStyle() # 初始化样式
  3. titlefont = xlwt.Font()
  4. titlefont.name = "楷体"
  5. titlefont.bold = True # 加粗
  6. titlefont.height = 11 * 20 # 字号
  7. titlefont.colour_index = 0x08 # 字体颜色
  8. titlestyle.font = titlefont
  9. # 单元格对齐方式
  10. cellalign = xlwt.Alignment()
  11. cellalign.horz = 0x02 # 水平
  12. cellalign.vert = 0x01 # 垂直
  13. titlestyle.alignment = cellalign
  14. # 边框
  15. borders = xlwt.Borders()
  16. borders.right = xlwt.Borders.DASHED
  17. borders.bottom = xlwt.Borders.DOTTED
  18. titlestyle.borders = borders
  19. # 背景颜色
  20. dataStyle = xlwt.XFStyle()
  21. bgcolor = xlwt.Pattern()
  22. bgcolor.pattern = xlwt.Pattern.SOLID_PATTERN
  23. bgcolor.pattern_fore_colour = 22 # 背景颜色
  24. dataStyle.pattern = bgcolor
复制代码
填充数据
  1. ws.write_merge(5, 6, 4, 6, "绩点", titlestyle) # (x1,y1,x2,y2,内容,样式)
  2. # (x1,y1)到(x2,y2)之间合并单元格,并以相应样式填写内容
复制代码
写入数据
  1. data = (("学号", "第一学期", "第二学期"),
  2.     ("201911040693", 2.971, 2.939),
  3.     ("201911040694", 2.035, 2.487),
  4.     ("201911040695", 2.709, 2.099),
  5.     ("201911040696", 3.374, 3.388),
  6.     ("201911040697", 2.646, 2.415))
  7. for i, item in enumerate(data):
  8.   for j, val in enumerate(item):
  9.     ws.write(i + 7, j + 4, val, dataStyle) # (行,列,内容,样式)
  10.     # 填写数据
复制代码
插入图片
  1. ws.insert_bitmap("123.bmp", 20, 21)
复制代码
保存文件
  1. wb.save("前两学期绩点统计.xls")
复制代码
到此这篇关于Python 操纵 Excel 学习笔记的文章就先容到这了,更多相干Python 操纵 Excel 内容请搜索草根技术分享从前的文章或继续浏览下面的相干文章盼望各人以后多多支持草根技术分享!

本帖子中包含更多资源

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

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作