8.Excel表格读写
1.python中对Excel读写
使用openpyxl这个库,对于Excel表格读写,在scrip目录下进入cmd,输入以下命令:
pip install openpyxl -i http://pypi.douban.com/simple/ --trusted-host=pypi.douban.com/simple
pip install 库名 -i http://pypi.douban.com/simple/ --trusted-host=pypi.douban.com/simple
这个库只能读写Excel2010格式,老版本不支持
2.新建表格
from openpyxl import Workbook
#先进性来的实例化,其实就是产生一个Excel表格对象
wb = Workbook()
#获取默认sheet对象
ws = wb.active
#1.创建第一张表,薪资表,修改sheet的名字,这个ws是默认第一张表
ws.title = "薪资表"
#给表格中单元格设置值,给A1,B1赋值
ws["A1"] = "员工姓名"
ws["B1"] = "薪资"
#也可以通过行和列,给单元格设置值,给A2,B2赋值
ws.cell(2,1).value = "大师兄"
ws.cell(2,2).value = "200000"
#2.创建第二张表,员工信息表,使用代码创建工作表
#create_sheet(sheet的名字,sheet的位置索引) 索引是从左到右,从0开始,索引不写的话默认为0
wb.create_sheet("员工信息表",1)
#保存表格,后缀名xlsx要写。保存以后生成一张表,并可以用WPS打开
wb.save("科技兴国.xlsx")3.读写取表格(已封装好,后续直接调用即可)
from openpyxl import load_workbook
class ReadData:
# 定义类方法,方便调用
@classmethod
def readExcel(cls, filename, sheetName):
'''
:param filename: Excel文件名字
:param sheetName: sheet的名字
:return: 返回的是读取出来列表中的所有数据
'''
#这里调式的时候路径要写两个点,后面项目执行的时候读取数据要写一个点
# 读取已经存在的表格(把在外面创建的表格,通过复制粘贴的方法放到这个目录下,如mms_eg.xlsx)
wb = load_workbook(f'./sheet_data/{filename}.xlsx')
# 指定读取表格的哪一个sheet
ws = wb[sheetName]
# 获取最大行
rows = ws.max_row
# 获取最大列
cols = ws.max_column
# 定义大列表,保存值[[],[],[],[]]
rows_list = []
# 利用嵌套for循环完成读取
# 从第二行开始读,取到最后一行。rang是左开右闭
for r in range(2, rows + 1):
# 定义一个列表,用来保存取出的每一行信息
rows_value = []
for c in range(1, cols + 1):
# 根据行和列取值,读取信息
i = ws.cell(r, c).value
# 给列表里面添加值
rows_value.append(i)
rows_list.append(rows_value)
return rows_list
if __name__=='__main__':
r = ReadData.readExcel('mms_eg','Sheet1')
print(r)版权声明:本文为colala6688原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。