aprendizaje del módulo xlrd en python

1. El módulo xlrd se usa principalmente para leer formularios de Excel, soportando xlsx y xls; xlwt se usa principalmente para escribir bibliotecas de Excel y leer

2. Tipos de datos en celdas de uso común

0, vacío (vacío); 1, cadena (texto); 2, número; 3, fecha; 4, booleano; 5, error; 6, en blanco (formulario en blanco)    

Uso

1. Módulo de importación

importar xlrd

En segundo lugar, abra el archivo de Excel para leer los datos (el archivo se crea primero)

 

data = xlrd.open_workbook ('study.xls') # Nombre y ruta del archivo, si la ruta o el nombre del archivo tienen chino, agregue una r al frente para indicar el carácter nativo; por ejemplo, 'rLearn.xls'

 

Tres, operación del módulo xlrd

1. Funciones básicas

1.1. Abra el libro para obtener el objeto Libro
  • xlrd.open_workbook (filename [, logfile, file_contents, ...]): abre el
    nombre de archivo del archivo Excel : el nombre del archivo a ser operado (incluyendo la ruta y el nombre del archivo);

Si el nombre de archivo no existe, se informa un error FileNotFoundError;
si el nombre de archivo existe, el valor de retorno es el objeto xlrd.book.Book

1.2. Obtener todos los nombres de las hojas en el objeto Libro
  • BookObject.sheet_names (): obtiene los nombres de todas las hojas y las muestra en una lista
1.3. Obtener todos los objetos de hoja en objeto Libro
  • BookObject.sheets (): obtiene todos los objetos de hoja y los muestra como una lista

  • BookObject.sheet_by_index (sheetx): Obtenga el objeto de hoja deseado
    sheetx como valor de índice a través del índice de hoja , y el índice comienza desde 0;
    si sheetx excede el rango del índice, se informa un Error IndexError;
    si sheetx está dentro del rango del índice, el valor de retorno es xlrd.sheet Objeto de hoja

  • BookObject.sheet_by_name (sheet_name): obtenga el objeto de hoja deseado por nombre de hoja
    sheet_name es el nombre de la hoja;
    si sheet_name no existe, se informa un error xlrd.biffh.XLRDError;
    si sheet_name existe, el valor de retorno es el objeto xlrd.sheet.Sheet.

1.4 Determine si se importa una hoja en el objeto Libro
  • BookObject.sheet_loaded (sheet_name_or_index): determine si la hoja se importó correctamente por el nombre o el índice de la hoja. El
    valor de retorno es bool. Si el valor de retorno es True, significa que se ha importado; si el valor de retorno es False, no se ha importado.
1.5. Manipular filas en objeto Hoja
  • SheetObject.nrows: obtiene el número de filas válidas en una hoja

  • SheetObject.row_values ​​(rowx [, start_colx = 0, end_colx = None]): obtenga los datos de la columna start_colx a la columna end_colx en rowx + 1 fila de la hoja, y el valor de retorno es una lista.
    Si rowx está en el rango de índice, devuelva los datos en forma de lista;
    si rowx no está en el rango de índice, se informa un Error IndexError

  • SheetObject.row (rowx): Obtenga la unidad de fila rowx + 1 en la hoja, el valor de retorno es una lista; el
    contenido de cada valor en la lista es: Tipo de unidad: datos de la unidad

  • SheetObject.row_slice (rowx [, start_colx = 0, end_colx = None]): obtenga la unidad de rowx + 1 fila en la hoja de la columna start_colx a la columna end_colx en modo de división, el valor de retorno es una lista; el
    contenido de cada valor en la lista es: unidad Tipo: datos de la unidad

  • SheetObject.row_types (rowx [, start_colx = 0, end_colx = None]): obtenga el tipo de celda de rowx + 1 fila en la hoja de la columna start_colx a la columna end_colx, el valor de retorno es tipo array.array.
    Tipo de unidad ctype: vacío es 0, cadena es 1, número es 2, fecha es 3, booleano es 4, error es 5 (izquierda es el tipo, derecha es el valor correspondiente del tipo);

  • SheetObject.row_len (rowx): Obtenga la longitud de rowx + 1 fila en la hoja

rowx: índice de fila, el número de filas comienza desde 0 (0 significa la primera fila), parámetros requeridos;
start_colx: columna de inicio, significa tomar valores de la columna start_colx, incluido el valor de start_colx;
end_colx: columna final, significa Valor final de la columna End_colx, excluyendo el valor end_colx;

start_colx por defecto es 0, end_colx por defecto es Ninguno: significa tomar toda la fila de datos relacionados;

  • SheetObject.get_rows (): obtiene un generador para todas las filas de una hoja
1.6. Operaciones de columna en objeto Hoja
  • SheetObject.ncols: obtiene el número de columnas válidas en una hoja

  • SheetObject.col_values ​​(self, colx [, start_rowx = 0, end_rowx = None]): obtenga los datos de la fila start_rowx a la fila end_rowx de la columna colx + 1 en la hoja, y el valor de retorno es una lista.

  • SheetObject.col_slice (colx [, start_rowx = 0, end_rowx = None]): obtenga los datos de la fila start_rowx a la fila end_rowx de la columna colx + 1 en la hoja de forma dividida.
    Los contenidos de cada valor en la lista son: Tipo de unidad: Datos de la unidad

  • SheetObject.col_types (colx [, start_rowx = 0, end_rowx = None]): obtenga el tipo de celda de la columna colx + 1 en la hoja de la fila start_rowx a la fila end_rowx, el valor de retorno es una lista;

1.7 Realizar operaciones en las celdas del objeto Hoja
  • ShellObeject.cell (rowx, colx): obtenga el objeto de celda en rowx + 1 fila y colx + 1 columna de objeto de hoja, el valor de retorno es del tipo 'xlrd.sheet.Cell', y el formato del valor devuelto es "tipo de celda: celda Valor ".

  • ShellObject.cell_value (rowx, colx): obtiene los datos de celda de rowx + 1 row y colx + 1 column en el objeto de hoja, y el valor de retorno es el tipo del valor actual (como float, int, string ...);

  • ShellObject.cell_type (rowx, colx): obtenga el valor del tipo de datos de celda de rowx + 1 fila y colx + 1 columna en el objeto de hoja;
    tipo de celda ctype: vacío es 0, cadena es 1, número es 2, fecha es 3, boolean es 4, el error es 5;

Operación específica:
import xlrd 
'' 'Open exce table' ''
wook_book = xlrd.open_workbook ('study.xls')
print (wook_book) #jResult: <xlrd.book.Book objeto en 0x000001DC91214B50>


'' '1, obtenga todos los nombres de las hojas '' '
sheet_names = wook_book.sheet_names ()
print (sheet_names) #Result: List [' people ',' animal ',' car ']



' '' 2, Get all or a cierta hoja de objeto '' '
' '' Get Todos los objetos de hoja '' '
sheet_object = wook_book.sheets ()
print (sheet_object) #RESULTS [<xlrd.sheet.Sheet object at
# 0x0000026F491C21C0>,
# <xlrd.sheet.Sheet object at 0x0000026F491C22E0>,
# <xlrd.sheet .Objeto de hoja en 0x0000026F491C22B0>] # Obtenga el
primer objeto de hoja por índice
sheet1_object = wook_book.sheet_by_index (0)
print (sheet1_object) # Obtenga el

primer objeto de hoja por nombre
sheet2_object = wook_book.sheet_by_name ('people')
print (sheet2_object)



'' '3. Determine si se ha importado una hoja' '' #Compruebe
si sheet1 se importa en
sheet1_is_load por índice = wook_book.sheet_loaded (sheet_name_or_index = 0)
print (sheet1_is_load) #Result: True

# Determine si sheet1 se importa por el nombre de la hoja
sheet1_name_is_load = wook_book.sheet_loaded (sheet_name_or_index = 'people')
print (sheet1_name_is_load) # El resultado es True o True




'' '4. Realice operaciones en el objeto de hoja: como el número de filas válidas, los datos de una fila de la columna n1 a n2, la unidad y el tipo de fila y la longitud de una fila. . . '' ' # Obtenga el
número de filas válidas en la hoja1 nrows: el número de filas
nrows = sheet1_object.nrows
print (nrows) # obtenga

los datos de la tercera fila en sheet1
all_row_values ​​= sheet1_object.row_values ​​(rowx = 2)
print (all_row_values) #get
some El valor de las primeras columnas a las primeras filas de la fila
row_values ​​= sheet1_object.row_values ​​(rowx = 2, start_colx = 1, end_colx = 3)
print (row_values) #Obtenga

el objeto de la unidad en la tercera fila de sheet1, que es el objeto de la unidad
row_object = sheet1_object.row (rowx = 2)
print (row_object) # Obtenga
la unidad de la fila 3 en sheet1
row_slice = sheet1_object.row_slice (rowx = 2)
print (row_slice) # Obtenga

el tipo de unidad de la fila 3 en sheet1
row_type = sheet1_object.row_types (rowx = 2)
print (row_type) # Obtiene

la longitud de la tercera fila en la hoja1
row_len = sheet1_object.row_len (rowx = 2)
print (row_len) # Obtenga

el generador de todas las filas en sheet1
row_generator = sheet1_object.get_rows ()
print (row_generator)




'' '5. Realizar operaciones en las columnas del objeto de hoja' '' #Obtener el 
número de columnas válidas ncols en sheet1: el número de columnas
ncols = sheet1_object.ncols
print (ncols)
# obtener los datos en la columna 1 de sheet1
col_values ​​= sheet1_object.col_values ​​(colx = 1)
print (col_values)
col_value1 = sheet1_object.col_values ​​(1,1,3)
print (col_value1) # Obtenga
la celda en la segunda columna de sheet1
col_silce = sheet1_object.col_slice (colx = 1)
print (col_silce ) # Obtenga
el tipo de celda de la segunda columna en sheet1
col_types = sheet1_object.col_types (colx = 1)
print (col_types)
'' '5. Realizar operaciones en las celdas en el objeto de hoja' '' 
# Obtener el objeto de celda en fila + 1 fila y colx + 1 columna en
hoja1 cell_info = sheet1_object.cell (rowx = 1, colx = 2)
print ( cell_info)
print (type (cell_info)) # <class 'xlrd.sheet.Cell'>

#Obtenga el valor de celda de fila + 1 fila y columna colx + 1 en
sheet1 cell_value = sheet1_object.cell_value (rowx = 1, colx = 2)
print (cell_value)

# Obtenga el valor del tipo de celda de fila + 1 fila y columna colx + 1 en la hoja de hoja
cell_type = sheet1_object.cell_type (rowx = 1, colx = 2)
print (cell_type)
 

 

 

Supongo que te gusta

Origin www.cnblogs.com/aichixigua12/p/12672755.html
Recomendado
Clasificación