J'ai un fichier xlsx moyennement volumineux (environ 14 Mo) et OpenOffice se bloque en essayant de l'ouvrir. J'essayais d'utiliser openpyxl pour lire le contenu, après ce tutoriel . L'extrait de code est le suivant:
from openpyxl import load_workbook
wb = load_workbook(filename = 'large_file.xlsx', use_iterators = True)
ws = wb.get_sheet_by_name(name = 'big_data')
Le problème est que je ne connais pas le nom de la feuille et que Sheet1/Sheet2 .. etc. ne fonctionnait pas (objet NoneType renvoyé). Je ne trouvais pas de documentation indiquant comment obtenir les noms de feuille d'un fichier xlsx à l'aide de openpyxl . Quelqu'un peut-il m'aider?
Utilisez la propriété sheetnames
:
noms de feuille
Renvoie la liste des noms des feuilles de calcul de ce classeur.
Les noms sont retournés dans l'ordre des feuilles de calcul.
Type: liste de chaînes
print (wb.sheetnames)
Vous pouvez également obtenir des objets de feuille de calcul à partir de wb.worksheets
:
ws = wb.worksheets[0]
python 3.xpour obtenir le nom de la feuille, vous devez utiliser l'attribut
g_sheet=wb.sheetnames
retour par liste
for i in g_sheet:
print(i)
** Choisissez n'importe quel nom **
ws=wb[g_sheet[0]]
ou ws = wb [n'importe quel nom]supposons que le nom de la feuille de nom soit purgé
ws=wb["paster"]
Comme mentionné précédemment, vous pouvez obtenir la liste des noms de feuille en utilisant le ws.sheetnames
Mais si vous connaissez les noms de feuille, vous pouvez obtenir cet objet de feuille de calcul en
ws.get_sheet_by_name("YOUR_SHEET_NAME")
Une autre façon de faire est comme mentionné dans la réponse précédente
ws['YOUR_SHEET_NAME']