excel文档名称为联系人.xls,内容如下:
一、xlrd模块用法
1.打开excel文件并获取所有sheet
import xlrd
# 打开Excel文件读取数据
data = xlrd.open_workbook('联系人.xls')
sheet_name = data.sheet_names() # 获取所有sheet名称
print(sheet_name) # ['银行2', '银行3']
2.根据下标获取sheet名称
# 根据下标获取sheet名称
sheet2_name = data.sheet_names()[1]
print(sheet2_name) # '银行3'
3.根据sheet索引或者名称获取sheet内容,同时获取sheet名称、行数、列数
# 根据sheet索引或者名称获取sheet内容,同时获取sheet名称、列数、行数
sheet2 = data.sheet_by_index(1)
print('sheet2名称:{}\nsheet2列数: {}\nsheet2行数: {}'.format(sheet2.name, sheet2.ncols, sheet2.nrows))
# sheet2名称:银行3
# sheet2列数: 7
# sheet2行数: 5
sheet1 = data.sheet_by_name('银行2')
print('sheet1名称:{}\nsheet1列数: {}\nsheet1行数: {}'.format(sheet1.name, sheet1.ncols, sheet1.nrows))
# sheet1名称:银行2
# sheet1列数: 8
# sheet1行数: 6
4.根据sheet名称获取整行和整列的值
# 根据sheet名称获取整行和整列的值
sheet1 = data.sheet_by_name('银行2')
print(sheet1.row_values(3))
# ['', '张2', '开发', 'IT编码', 999.0, 133111.0, 41463.0, 'zhang2@164.com'] 日期2013/7/7,实际却显示为浮点数41463.0
print(sheet1.col_values(3))
# ['', '工作职责', '', 'IT编码', '网络维修', '']
5.获取指定单元格的内容
# 获取指定单元格的内容
print(sheet1.cell(1,0).value) # 第2 行1列内容:机构名称
print(sheet1.cell_value(1,0)) # 第2 行1列内容:机构名称
print(sheet1.row(1)[0].value) # 第2 行1列内容:机构名称
6.获取单元格内容的数据类型
# 获取单元格内容的数据类型
print(sheet1.cell(1,0).ctype) # 第2 行1列内容 :机构名称为string类型
print(sheet1.cell(3,4).ctype) # 第4行5列内容:999 为number类型
print(sheet1.cell(3,6).ctype) # 第4 行7列内容:2013/7/8 为date类型
# 说明:ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
7.获取单元内容为日期类型的方式
使用xlrd的xldate_as_tuple
处理为date格式
from datetime import datetime,date
if sheet1.cell(3,6).ctype ==