使用openpyxl将单元格内容汇总(大数据作业2)

题目如下:

首先导入openpyxl包,调用load_workbook打开目标工作簿

调用worksheet选中目标工作表

使用max_row和max_column获取该数据的最大行列值

在第一行使用cell函数最后写入数据”所有爱好“

要想获取各个单元格的内容,要使用内层for循环,i代表行,j代表列

同样使用cell函数来获取单元格的内容,获取的内容添加到字符串后面,使用空格隔开每个值

最后使用save函数另存为”每个人的爱好汇总.xlsx“文件

from openpyxl import load_workbook

def sumEXCEl(FileName):
    wb = load_workbook(FileName) #打开使用文件
    #对每个人的爱好进行汇总
    ws = wb.worksheets[0] #打开该文件的第一个工作表(指定工作表)
    rowNum = ws.max_row #返回最大行
    colNum = ws.max_column #返回最大列
    # print(rowNum,colNum)

    ws.cell(row=1,column=colNum+1,value="所有爱好") #单元格写入数据
    #汇总每个人的爱好
    for i in range(2,rowNum+1):
        all_haihao = ""
        for j in range(2,colNum+1):
            if(ws.cell(row=i,column=j).value) == "是": #判断值为“是”,则获取row=1,column=j的值
                cell_txt = ws.cell(row=1, column=j).value  # 获取目标单元格的值
                all_haihao = all_haihao + cell_txt +" " #获取后加到all-haihao变量上,中间用空格隔开
        print(ws.cell(row=i,column=1).value + "的所有爱好是" + all_haihao) #进行汇总打印
        ws.cell(row=i,column=colNum+1).value = all_haihao #汇总后添加到最后一列
        wb.save("每个人的爱好汇总.xlsx") #另存

def main():
    fn = "每个人的爱好.xlsx"
    sumEXCEl(fn)

if __name__ == '__main__':
    main()

运行结果:

知识点:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值