xlrd Modul Lernen in Python

1. Das xlrd-Modul wird hauptsächlich zum Lesen von Excel-Formularen verwendet und unterstützt xlsx und xls. Xlwt wird hauptsächlich zum Schreiben von Excel- und Lesebibliotheken verwendet

2. Datentypen in häufig verwendeten Zellen

0, leer (leer); 1, Zeichenfolge (Text); 2, Zahl; 3, Datum; 4, Boolescher Wert; 5, Fehler; 6, leer (leeres Formular)    

Verwenden Sie

1. Modul importieren

xlrd importieren

Öffnen Sie anschließend die Excel-Datei, um die Daten zu lesen (die Datei wird zuerst erstellt).

 

data = xlrd.open_workbook ('study.xls') #Dateiname und Pfad Wenn der Pfad oder Dateiname Chinesisch hat, fügen Sie vorne ein r hinzu, um das native Zeichen anzugeben, z. B. 'rLearn.xls'.

 

Drei, xlrd Modulbetrieb

1. Grundfunktionen

1.1 Öffnen Sie die Arbeitsmappe, um das Buchobjekt abzurufen
  • xlrd.open_workbook (Dateiname [, Protokolldatei, Dateiinhalt, ...]): Öffnen Sie die Excel-Datei
    Dateiname: Der Name der zu bedienenden Datei (einschließlich Dateipfad und Dateiname);

Wenn der Dateiname nicht vorhanden ist, wird ein Fehler FileNotFoundError gemeldet.
Wenn der Dateiname vorhanden ist, ist der Rückgabewert das Objekt xlrd.book.Book

1.2. Alle Blattnamen im Buchobjekt abrufen
  • BookObject.sheet_names (): Ruft die Namen aller Blätter ab und zeigt sie in einer Liste an
1.3. Alle Blattobjekte im Buchobjekt abrufen
  • BookObject.sheets (): Ruft alle Blattobjekte ab und zeigt sie als Liste an

  • BookObject.sheet_by_index (sheetx): Ruft das gewünschte
    Blattobjekt sheetx als Indexwert über den Blattindex ab, und der Index beginnt bei 0.
    Wenn Sheetx den Indexbereich überschreitet, wird ein Fehlerindexfehler gemeldet.
    Wenn Sheetx innerhalb des Indexbereichs liegt, lautet der Rückgabewert xlrd.sheet Blattobjekt

  • BookObject.sheet_by_name (Blattname): Ermittelt das gewünschte
    Blattobjekt anhand des Blattnamens. Blattname ist der
    Blattname. Wenn Blattname nicht vorhanden ist, wird ein Fehler xlrd.biffh.XLRDError gemeldet.
    Wenn Blattname vorhanden ist, ist der Rückgabewert das Objekt xlrd.sheet.Sheet

1.4. Bestimmen Sie, ob ein Blatt im Buchobjekt importiert wird
  • BookObject.sheet_loaded (sheet_name_or_index): Bestimmen Sie, ob das Blatt erfolgreich über den Blattnamen oder den Index importiert wurde. Der
    Rückgabewert ist bool. Wenn der Rückgabewert True ist, bedeutet dies, dass er importiert wurde. Wenn der Rückgabewert False ist, wurde er nicht importiert
1.5 Bearbeiten Sie die Zeilen im Blattobjekt
  • SheetObject.nrows: Ermittelt die Anzahl der gültigen Zeilen in einem Blatt

  • SheetObject.row_values ​​(rowx [, start_colx = 0, end_colx = None]): Ruft die Daten von der Spalte start_colx in die Spalte end_colx in der Zeile rowx + 1 des Blattes ab, und der Rückgabewert ist eine Liste.
    Wenn sich rowx im Indexbereich befindet, geben Sie die Daten in Form einer Liste zurück.
    Wenn sich rowx nicht im Indexbereich befindet, wird ein Fehler IndexError gemeldet

  • SheetObject.row (rowx): Ermittelt die Zeileneinheit rowx + 1 im Blatt. Der Rückgabewert ist eine Liste. Der
    Inhalt jedes Werts in der Liste lautet: Einheitentyp: Einheitendaten

  • SheetObject.row_slice (rowx [, start_colx = 0, end_colx = None]): Ruft die Einheit von rowx + 1 Zeile im Blatt von der Spalte start_colx zur Spalte end_colx im Slice-Modus ab. Der Rückgabewert ist eine Liste. Der
    Inhalt jedes Werts in der Liste lautet: unit Typ: Gerätedaten

  • SheetObject.row_types (rowx [, start_colx = 0, end_colx = None]): Ruft den Zelltyp von rowx + 1 Zeile im Blatt von der Spalte start_colx zur Spalte end_colx ab. Der Rückgabewert ist array.array type.
    Einheitentyp ctype: leer ist 0, Zeichenfolge ist 1, Nummer ist 2, Datum ist 3, Boolescher Wert ist 4, Fehler ist 5 (links ist der Typ, rechts ist der entsprechende Wert des Typs);

  • SheetObject.row_len (rowx): Ermittelt die Länge von rowx + 1 Zeile im Blatt

rowx: Zeilenindex, die Anzahl der Zeilen beginnt bei 0 (0 bedeutet die erste Zeile), erforderliche Parameter;
start_colx: Startspalte, bedeutet, Werte aus der Spalte start_colx zu übernehmen, einschließlich des Werts von start_colx;
end_colx: Endspalte, bedeutet bis End_colx-Spaltenendwert, ausgenommen der end_colx-Wert;

start_colx ist standardmäßig 0, end_colx ist standardmäßig None: bedeutet, dass die gesamte Zeile der zugehörigen Daten übernommen wird.

  • SheetObject.get_rows (): Ruft einen Generator für alle Zeilen eines Blattes ab
1.6 Spaltenoperationen im Blattobjekt
  • SheetObject.ncols: Ermittelt die Anzahl der gültigen Spalten in einem Blatt

  • SheetObject.col_values ​​(self, colx [, start_rowx = 0, end_rowx = None]): Ruft die Daten aus der Zeile start_rowx in die Zeile end_rowx der Spalte colx + 1 im Blatt ab, und der Rückgabewert ist eine Liste.

  • SheetObject.col_slice (colx [, start_rowx = 0, end_rowx = None]): Rufen Sie die Daten in einem Slice-Modus von der Zeile start_rowx zur Zeile end_rowx der Spalte colx + 1 des Blattes ab, und der Rückgabewert ist eine Liste.
    Der Inhalt jedes Werts in der Liste ist: Einheitentyp: Einheitendaten

  • SheetObject.col_types (colx [, start_rowx = 0, end_rowx = None]): Liefert den Zelltyp der Spalte colx + 1 im Blatt von der Zeile start_rowx zur Zeile end_rowx. Der Rückgabewert ist eine Liste.

1.7 Führen Sie Operationen an den Zellen des Sheet-Objekts aus
  • ShellObeject.cell (rowx, colx): Ruft das Zellenobjekt in rowx + 1 Zeile und colx + 1 Spalte des Blattobjekts ab. Der Rückgabewert hat den Typ 'xlrd.sheet.Cell' und das Format des zurückgegebenen Werts lautet "Zelltyp: Zelle" Wert ".

  • ShellObject.cell_value (rowx, colx): Ruft die Zellendaten von rowx + 1 row und colx + 1 column im Blattobjekt ab, und der Rückgabewert ist der Typ des aktuellen Werts (z. B. float, int, string ...).

  • ShellObject.cell_type (rowx, colx): Liefert den Zelldatentypwert von rowx + 1 Zeile und colx + 1 Spalte im
    Blattobjekt ; Zelltyp ctype: leer ist 0, Zeichenfolge ist 1, Nummer ist 2, Datum ist 3, Boolescher Wert ist 4, Fehler ist 5;

Spezifische Operation:
xlrd importieren 
'' 'Exce-Tabelle öffnen' ''
wook_book = xlrd.open_workbook ('study.xls')
print (wook_book) #jResult: <xlrd.book.Book-Objekt bei 0x000001DC91214B50>


'' '1, alle Blattnamen abrufen '' '
sheet_names = wook_book.sheet_names ()
print (sheet_names) #Result: List [' people ',' animal ',' car ']



' '' 2, Get all oder ein bestimmtes Blattobjekt '' '
' '' Get Alle
Blattobjekte '' ' sheet_object = wook_book.sheets ()
print (sheet_object) #RESULTS [<xlrd.sheet.Sheet-Objekt unter
# 0x0000026F491C21C0>,
# <xlrd.sheet.Sheet-Objekt unter 0x0000026F491C22E0>,
# <xlrd.sheet .Blattobjekt bei 0x0000026F491C22B0>] #Ermittelt das
erste Blattobjekt über den Index
sheet1_object = wook_book.sheet_by_index (0)
Druck (sheet1_object)

# Holen Sie sich das erste Objekt über einen Blattnamen
sheet2_object = wook_book.sheet_by_name ( ‚Menschen‘)
Print (sheet2_object)



‚‘ ‚3 bestimmt , ob ein Blatt eingeführt worden ist ‘ ‚‘
# Index durch , ob die eingeführten sheet1 bestimmt
sheet1_is_load = wook_book.sheet_loaded (sheet_name_or_index = 0)
print (sheet1_is_load) #Ergebnis: True

# Bestimmen Sie, ob sheet1 durch den Blattnamen importiert wird
sheet1_name_is_load = wook_book.sheet_loaded (sheet_name_or_index = 'people')
print (sheet1_name_is_load)




'' '4. Führen Sie Operationen für das Blattobjekt aus: z. B. die Anzahl der gültigen Zeilen, die Daten einer Zeile aus den Spalten n1 bis n2, die Einheit und den Typ einer Zeile sowie die Länge einer Zeile. . . '' ' #Ermittelt die
Anzahl der gültigen Zeilen in Blatt1-Zeilen: Die Anzahl der Zeilen
nrows = sheet1_object.nrows
print (nrows) #get

die Daten der dritten Zeile in sheet1
all_row_values ​​= sheet1_object.row_values ​​(rowx = 2)
print (all_row_values) #get
some Der Wert der ersten Spalten zu den ersten Zeilen in der Zeile
row_values ​​= sheet1_object.row_values ​​(rowx = 2, start_colx = 1, end_colx = 3)
print (row_values) #Ruft

das Einheitsobjekt in der dritten Zeile von sheet1 ab, bei dem es sich um das Einheitsobjekt
row_object = handelt sheet1_object.row (rowx = 2)
print (row_object) #Get
die Einheit von Zeile 3 in sheet1
row_slice = sheet1_object.row_slice (rowx = 2)
print (row_slice) #Get

den Einheitentyp von Zeile 3 in sheet1
row_type = sheet1_object.row_types (rowx = 2)
print (row_type) # Ermittelt

die Länge der dritten Zeile in Blatt1
row_len = sheet1_object.row_len (rowx = 2)
print (row_len) #Ruft

den Generator aller Zeilen in sheet1 ab.
row_generator = sheet1_object.get_rows ()
print (row_generator)




'' '5. Führen Sie Operationen für die Spalten im Blattobjekt aus. ' '' #Ermitteln Sie die 
Anzahl der gültigen Spalten ncols in Blatt1: Die Anzahl der Spalten
ncols = sheet1_object.ncols
print (ncols)
#get die Daten in Spalte 1 von sheet1
col_values ​​= sheet1_object.col_values ​​(colx = 1)
print (col_values)
col_value1 = sheet1_object.col_values ​​(1,1,3)
print (col_value1) #Ruft
die Zelle in der zweiten Spalte von sheet1 ab
col_silce = sheet1_object.col_slice (colx = 1)
print (col_silce) ) #Ermittelt
den Zelltyp der zweiten Spalte in sheet1
col_types = sheet1_object.col_types (colx = 1)
print (col_types)
'' '5. Führen Sie Operationen an den Zellen im 
Blattobjekt aus. ' '' # Holen Sie sich das Zellenobjekt in Zeile + 1 Zeile und Spalte + 1 Spalte in
Blatt1. Cell_info = sheet1_object.cell (rowx = 1, colx = 2)
print ( cell_info)
print (type (cell_info)) # <class 'xlrd.sheet.Cell'>

#Ruft den Zellenwert von Zeile + 1 Zeile und Spalte colx + 1 in
sheet1 ab cell_value = sheet1_object.cell_value (rowx = 1, colx = 2)
print (cell_value)

#Ruft den Zelltypwert von Zeile + 1 Zeile und Spalte colx + 1 im Blatt ab.
Cell_type = sheet1_object.cell_type (rowx = 1, colx = 2)
print (cell_type)
 

 

 

Ich denke du magst

Origin www.cnblogs.com/aichixigua12/p/12672755.html
Empfohlen
Rangfolge