python读写Excel方法(xlwt和xlrd)

  在我们做平常工作中都会遇到操作excel,那么今天写一篇,如何通过python操作excel,当然python操作excel的库有很多,比如pandas,xlwt/xlrd,openpyxl等,每个库都有不同的区别,具体的区别,大家一起研究下哈。

 xlrd模块

xlrd是对于Excel进行读取,xlrd 操作的是xls/xlxs格式的excel

安装

xlrd是python的第3方库,需要通过pip进行安装

pip install xlrd

 读取excel数据

1、导入xlrd莫款

2、打开Excel完成实例化

3、通过下标获取对应的表(可以通过表名获取)

4、通过列,行或者坐标获取表格的数据

# coding:utf-8
import xlrd
# excel路径
excle_path = r'E:\123.xlsx'
# 打开excel读取文件
data = xlrd.open_workbook(excle_path)
# 根据sheet下标选择读取内容
sheet = data.sheet_by_index(1)
# 获取到表的总行数
nrows = sheet.nrows
for i in range(nrows):
    print(sheet.row_values(i))

 上面的是通过表的下标来选择读取的,当我们知道表的名称的时候,也可以通过表的名称进行读取

# coding:utf-8
import xlrd
# excel路径
excle_path = r'E:\123.xlsx'
# 打开excel读取文件
data = xlrd.open_workbook(excle_path)
# 根据sheet下标选择读取内容
sheet = data.sheet_by_index(1)
# 获取全部表的名称
sheet_names = data.sheet_names()
print('全部表名称')
print(sheet_names)
# 根据sheet名称选择读取内容
sheet1 = data.sheet_by_name('姓名')
# 获取到表的总行数
nrows1 = sheet.nrows
print('姓名表内容:')
for j in range(nrows1):
    print(sheet1.row_values(j))

上面通过下标和名称都成功读取出来了数据,我们通过坐标来读取数据

# coding:utf-8
import xlrd
# excel路径
excle_path = r'E:\123.xlsx'
# 打开excel读取文件
data = xlrd.open_workbook(excle_path)
# 根据sheet下标选择读取内容
sheet = data.sheet_by_index(1)
# 通过坐标读取
A1 = sheet.cell_value(1,0)
print(A1)

 

xlrd中的其他用法

1、读取sheet的行数、列数

# excel路径
excle_path = r'E:\123.xlsx'
# 打开excel读取文件
data = xlrd.open_workbook(excle_path)
# 读取sheet行数据,通过下标获取
a = sheet.row_values(1)
# 读取sheet列数据,通过下标获取
b = sheet.col_values(1)

2、获取sheet的行数,列数

# coding:utf-8
import xlrd
# excel路径
excle_path = r'E:\123.xlsx'
# 打开excel读取文件
data = xlrd.open_workbook(excle_path)
# 根据sheet下标选择读取内容
sheet = data.sheet_by_index(1)
print('sheet名称:{}\nsheet列数: {}\nsheet行数: {}'.format(sheet.name, sheet.ncols, sheet.nrows))

 xlwt模块

xlwt是对于Excel进行读取,xlwt操作的是xls格式的excel

安装

xlwt属于python的第3方库,需要通过pip进行安装

pip install xlwt

 写入Excel数据

1、首先导入xlwt第3方库

2、创建一个workbook模块,相当于创建一个xlwt文件

3、通过add_sheet创建一个表格

4、使用write函数进行对表完成写的操作

5、把写完的数据导入到Excel中

# coding:utf-8
import xlwt
# excel路径
excle_path = r'E:\1234.xls'
# 创建一个Workbook模块
data = xlwt.Workbook(encoding='utf-8')
# 创建一个表格,cell_overwrite_ok=True 为不覆盖表,默认为False
sheet = data.add_sheet('test123',cell_overwrite_ok=True)
# 写入坐标为(0,0)内容为职位
sheet.write(0,0,'职位')
# 写入坐标为(1,0)内容为软件测试工程师
sheet.write(1,0,'软件测试工程师')
# 保存到excel中
data.save(excle_path)

找到excel的路径中打开查看,发现已经写入成功了

 

Xlwt的其他方法

 其中xlwt这些操作Excel只是默认的方法,xlwt也可以更改写入内容的文字大小,颜色等操作

style = xlwt.XFStyle() # 初始化样式
font = xlwt.Font()  # 创建字体
font.name = u'微软雅黑'  # 字体类型
font.colour_index = 6    #字体颜色
font.underline = True  #下划线
font.italic = True  # 斜体
font.height = 400    #字体大小   200等于excel字体大小中的10
style.font = font    #设定样式

如果哪些内容写入时需要更改上面的格式内容,可以在书写的后面加上方法

给大家举个小栗子

# coding:utf-8
import xlwt
# excel路径
excle_path = r'E:\12314.xls'
# 创建一个Workbook模块
data = xlwt.Workbook(encoding='utf-8')
style = xlwt.XFStyle() # 初始化样式
font = xlwt.Font()  # 创建字体
font.name = u'微软雅黑' # 字体类型
font.colour_index = 6   # 字体颜色
font.underline = True # 下划线
font.italic = True # 斜体
font.height = 400    # 字体大小   200等于excel字体大小中的10
style.font = font   # 设定样式
# 创建一个表格,cell_overwrite_ok=True 为不覆盖表,默认为False
sheet = data.add_sheet('test123',cell_overwrite_ok=True)
# 写入坐标为(0,0)内容为职位
sheet.write(0,0,'职位',style)
# 写入坐标为(1,0)内容为软件测试工程师
sheet.write(1,0,'软件测试工程师',style)
# 保存到excel中
data.save(excle_path)

 

 

 

当然python操作Excel的方法不仅仅是这么多,还有更多的骚操作,等到我们用到的时候在一起学习哈

 

感觉安静写的对您有帮助的话,可以点个关注,持续更新中~~

 

posted @ 2019-11-04 18:48  测试-安静  阅读(6811)  评论(4编辑  收藏  举报