小豆浆 python合并excel(openpyxl) www.xdoujiang.com

  • A+
所属分类:python实战
  1. 老师的作品哈 我只是修改了一点点内容~~~
  2. #!/usr/bin/python
  3. # -*- coding: utf-8 -*-
  4. #--------------------------------------------------
  5. #Author:gongzheng
  6. #Email:85646830@163.com
  7. #FileName:5.py
  8. #Function: 
  9. #Version:1.0 
  10. #Created:2017-12-13
  11. #--------------------------------------------------
  12. import os
  13. import glob
  14. import openpyxl
  15. #pip install openpyxl
  16. def merge_xlsx_files(xlsx_files):
  17.     #返回对象wb
  18.     wb = openpyxl.load_workbook(xlsx_files[0])
  19.     #wb.active属性
  20.     ws = wb.active
  21.     #最后完成excel的标题 自定义好了
  22.     ws.title = "gongzheng excel"
  23.     for filename in xlsx_files[1:]:
  24.         workbook = openpyxl.load_workbook(filename)
  25.         sheet = workbook.active
  26.         #iter_rows返回全部单元格 然后选择第二行有数据的
  27.         for row in sheet.iter_rows(min_row=2):
  28.             values = [cell.value for cell in row]
  29.             ws.append(values)
  30.     return wb
  31. def get_all_xlsx_files(path):
  32.     #遍历路径下的xlsx文件
  33.     xlsx_files = glob.glob(os.path.join(path, '*.xlsx'))
  34.     #排序下
  35.     sorted(xlsx_files, key=str.lower)
  36.     return xlsx_files
  37. def main():
  38.     #最后保存的地址 可以自行修改
  39.     xlsx_files = get_all_xlsx_files(os.path.expanduser('~root/scripts'))
  40.     wb = merge_xlsx_files(xlsx_files)
  41.     #保存文件名字 自行定义
  42.     wb.save('merged_form.xlsx')
  43. if __name__ == '__main__':
  44.    main()
  45. 效果:
  46. root@10.105.37.250:scripts# ll *.xlsx
    -rw-r--r-- 1 root root 9896 Dec 13 17:03 1.xlsx
    -rw-r--r-- 1 root root 9287 Dec 13 17:04 2.xlsx
    -rw-r--r-- 1 root root 5956 Dec 13 17:10 merged_form.xlsx
    root@10.105.37.250:scripts#
  47. 小豆浆 python合并excel(openpyxl) www.xdoujiang.com 小豆浆 python合并excel(openpyxl) www.xdoujiang.com 小豆浆 python合并excel(openpyxl) www.xdoujiang.com
  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: