Comment implémenter la fusion de plusieurs tables dans Excel en python (avec code)

烟雨青岚
Libérer: 2020-06-30 13:41:04
avant
5866 Les gens l'ont consulté

Comment implémenter la fusion de plusieurs tables dans Excel en python (avec code)

Aujourd'hui, j'utiliserai Python pour fusionner plusieurs feuilles de calcul Excel en un seul classeur. J'ai utilisé moins de 40 lignes de code pour fusionner plus de 60 classeurs Excel en un seul. .

Cet article n'utilise pas la bibliothèque openpyx, mais les bibliothèques xlrd et xlwt Bien que les fonctions de ces deux bibliothèques ne soient pas comparables à openpyx, elles peuvent faire fonctionner l'ancienne version d'Excel se terminant par xls, ce qui n'est pas le cas. supporté par openpyx

Le code

L'idée générale est la suivante

  • Parcourir pour obtenir tous les fichiers Excel dans le répertoire racine
  • Selon Match le nom Excel pour obtenir un certain type d'Excel
  • Créer un classeur pour écrire les données copiées
  • Chaque Excel a une feuille 1, parcourir les cellules et écrivez le classeur créé

Le processus détaillé est écrit dans le code

# -*- coding: utf-8 -*-
import xlrd
import xlwt
import os
import re
""" 写入工作本 """
def write_excel(path, write_sheet):
    # 加载工作本
    book = xlrd.open_workbook(path)
    # 获取表单
    read_sheet = book.sheet_by_name('Sheet1')
    # 遍历
    for row in  range(read_sheet.nrows):
        for col in  range(read_sheet.ncols):
            write_sheet.write(row, col, read_sheet.cell_value(row,col))
            
# 获取根目录下所有文件名
def walk(path):
  for root,dirs,names in os.walk(path):
    list = []
    for filename in names:
        path = os.path.join(root, filename)
        list.append(path)
    return list
if __name__ == "__main__":
    # 创建工作本
    write_book = xlwt.Workbook()
    # 根目录
    root = r'C:\mydata\generator\excel'
    path_list = walk(root)
    for path in path_list:
        val = path.find("本专科")
        if val!=-1:
        # 正则匹配
            ser = re.search('.*20200403(.*?).xls',path)
            name = ser.group(1)
            # 创建sheet
            write_sheet = write_book.add_sheet(name)
            # 写入
            write_excel(path, write_sheet)
    # 保存        
    write_book.save(r'本专科.xls')
Copier après la connexion

Merci à tous d'avoir lu, j'espère que vous en bénéficierez beaucoup.

Cet article est reproduit à partir de : https://blog.csdn.net/youku1327/article/details/105300668

Tutoriel recommandé : "Tutoriel Python"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!