Task2 Python与excel

Python与excel

      在安装openpyxl包之后,我们能够利用Python实现对表格文件的各项操作,本次的任务依旧偏编程实践性,所用的方法不难,关键在于掌握调用openpyxl的方法,具体的语句可以记住常用的,用到时候再查不熟悉的也可以。
      由于内容多,仍然利用思维导图的方法来组织学习内容。

读入

在这里插入图片描述

写入

在这里插入图片描述

样式设计

在这里插入图片描述

练习题部分

      本次练习题均提供了参考程序,感谢Datawhale成员的悉心付出

题1

      找出用户行为偏好.xlsx中sheet1表中空着的格子,并输出这些格子的坐标

from openpyxl import load_workbook
exl = load_workbook('用户行为偏好.xlsx')
sheet = exl.active
for row in sheet.iter_rows(min_row = 1, max_row = 102840,min_col = 1,max_col = 4):
	for cell in row:
		if not cell.value:
		print(cell.coordinate)

      给定的参考程序利用了读取多个格子方法中的行获取办法,获取了一行的数值之后再用for循环得出每一列的值,再检验是否为空,若为空输出坐标。
      本题较简单,基本就是应用了读取操作。

题2

      打开test文件,找出文件中购买数量 buy_mount 超过5的行,并对其标红、加粗、附上边框。

from openpyxl import load_workbook
from openpyxl.styles import Font, Side, Border
workbook = load_workbook('test.xlsx')
sheet = workbook.active
buy_mount = sheet['F']
row_lst = []
for cell in buy_mount:
	if isinstance(cell.value, int) and cell.value > 5:
		print(cell.row)
		row_lst.append(cell.row)
side = Side(style='thin', color='FF000000')
border = Border(left=side, right=side, top=side, bottom=side)
font = Font(bold=True, color='FF0000')
for row in row_lst:
	for cell in sheet[row]:
	cell.font = font
	cell.border = border
workbook.save('new_test.xlsx')

本题分为两部分:

  1. 找到购买数量超过5的行
  2. 完成样式操作。
  3. 保存文件

      本题的参考程序使用的读取方法与题1不同,由于只需要要获取F列数值,于是直接锁定的F列然后找数值大于5的行数添加到行数列表中。
      样式操作就是很简单的遍历整个行然后赋值,没有什么特别的
      两道习题都不难,基本就是循环遍历加上样式库的一些赋值操作,参考程序上看比较好理解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值