python辅助解决excel的单元格内容按需输出问题
一、问题的背景
🌹 新学期,新气象。开学两周,同学们的状态已渐入佳境。当然,开学初的寒假作业表彰也是必不可少的,由于本次作业更加趣味化与多样化,因此优秀作业表彰名单也需分项表彰。在老师们的细心检查与精心挑选下,五项作业每一项约有150-220名同学接受表彰。那接下来做分项海报(五张)就是一个非常重要的任务。
为了方便统计,老师们按照项目名称将表彰名单填写在了如下表格里:
🐶 现在问题来了,如何将每一项的名单按照一定的顺序先排列成矩阵,再复制到海报的模板里(海报有可能是.doc文件,也有可能是.psd文件)? 首先肯定不能一个个复制粘贴,如果用excel的“&”功能可能还要手动调节名字之间的空格以及换行问题。大几百个名字,单是空格也得敲一阵子。所以想到了python辅助解决excel的单元格内容输出。
二、解决过程
1. 已实现的功能
🦋 在python里用简单的循环语句就解决了这个问题,当然也发现了一个疑问,先说明解决了什么:
① 自动换行问题(可以根据海报大小以及名单数量选择具体的换行标准:人多的话10个一行,人少可以6个或者8个,可自由切换);
② 名单中两个名字之间的空格问题;
③ 两个字的名字之间的空格问题.
如:
章美丽 王漂亮
甄好 赵成
不如:
章美丽 王漂亮
甄 好 赵 成
代码如下:
import xlrd
path ='/Users/carla/Desktop/数学寒假作业表彰名单-总.xlsx' # 源数据的路径
wb = xlrd.open_workbook(path)
sh = wb.sheet_by_name("Sheet1")
ncols = sh.ncols # 获取列数
print