283 votes

Pandas : Recherche de la liste des feuilles dans un fichier Excel

La nouvelle version de Pandas utilise l'interface suivante pour charger des fichiers Excel :

read_excel('path_to_file.xls', 'Sheet1', index_col=None, na_values=['NA'])

mais que faire si je ne connais pas les feuilles qui sont disponibles ?

Par exemple, je travaille avec des fichiers Excel contenant les feuilles suivantes

Données 1, Données 2 ..., Données N, foo, bar

mais je ne sais pas N a priori.

Existe-t-il un moyen d'obtenir la liste des feuilles d'un document Excel dans Pandas ?

1voto

  1. Avec l'option load_workbook readonly, ce qui était auparavant vu comme une exécution attendant visiblement pendant de nombreuses secondes s'est produit avec des millisecondes. La solution pourrait cependant être encore améliorée.

     import pandas as pd
     from openpyxl import load_workbook
     class ExcelFile:
    
         def __init__(self, **kwargs):
             ........
             .....
             self._SheetNames = list(load_workbook(self._name,read_only=True,keep_links=False).sheetnames)
  2. L'Excelfile.parse prend le même temps que la lecture du xls complet de l'ordre de 10s de sec. Ce résultat a été obtenu avec le système d'exploitation Windows 10 avec les versions de paquetage suivantes

     C:\>python -V
     Python 3.9.1
    
     C:\>pip list
     Package         Version
     --------------- -------
     et-xmlfile      1.0.1
     numpy           1.20.2
     openpyxl        3.0.7
     pandas          1.2.3
     pip             21.0.1
     python-dateutil 2.8.1
     pytz            2021.1
     pyxlsb          1.0.8
     setuptools      49.2.1
     six             1.15.0
     xlrd            2.0.1

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X