Python USES the third party library xlrd to read the Excel sample


This article shows you how to use xlrd to read the contents of the Excel table. xlrd is a third-party library, so we need to install xlrd before using it. In addition, we usually use xlwt to write Excel, so in the next article we will introduce how to write Excel using xlwt. xlrd download: xlrd 0.8.0

installs xlrd

To install xlrd, you just need to run setup, or you can unzip it into your project or use

xlrd API

Get Excel, which is called work book here

open_workbook(file_name)

There are two ways to get the specified Sheet,

sheet = xls.sheet_by_index(sheet_no) 
sheet = xls.sheet_by_name(sheet_name)

Gets the values (array) for the entire row and column

sheet.row_values(i)  
sheet.col_values(i)

Gets the total number of rows and total number of columns

nrows = sheet.nrows  
ncols = sheet.ncols

USES xlrd

Using xlrd here is a simple example:

# -*- coding: utf-8 -*- 
''''' 
Created on 2012-12-14 
 
@author:  walfred
@module: XLRDPkg.read 
@description:
'''   
import os 
import types 
import xlrd as ExcelRead 
 
def readXLS(file_name): 
    if os.path.isfile(file_name): 
        try
            xls = ExcelRead.open_workbook(file_name) 
            sheet = xls.sheet_by_index(0
        except Exception, e: 
            print "open %s error, error is %s" %(file_name, e) 
            return 
 
    rows_cnt = sheet.nrows 
    for row in range(1, rows_cnt): 
        name = sheet.row_values(row)[0].encode("utf-8").strip() 
        sex = sheet.row_values(row)[1].encode("utf-8").strip() 
        age = sheet.row_values(row)[2
        if type(age) is types.FloatType:# Read the type  
            no = str(int(age)) 
        else
            age = no.encode("utf-8").strip() 
 
        country = sheet.row_values(row)[3].encode("utf-8").strip() 
        print "Name: %s, Sex: %s, Age: %s, Country: %s" %(name, sex, age, country) 
 
if __name__ == "__main__"
    readXLS("./test_read.xls");

Very easy, it should be noted that xlrd currently only supports MS Excel version 95-03, so you need to check your word version before using it.