参考推荐:
python–xlsx文件的读写_囊萤映雪的萤的博客-CSDN博客_python xlsx
(包含openpyxl 的各种接口使用说明)
workbook:工作簿对象
Sheet:表单对象
cell:表格对象
安装openpyxl库(使用镜像,否则下载太慢):
pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple
openpyxl创建excel文件
import openpyxl
data = openpyxl.Workbook() # 新建工作簿
data.create_sheet('test') # 添加页;可重复添加 不同名称的 sheet 表单
# table = data.active # 获得当前活跃的工作页,默认为第一个工作页
table = data['test'] # 依据sheet名称获取 sheet对象内容
table.cell(1,1,'second test') # 行,列,值 这里是从1开始计数的
table.cell(2,1).value = 'third test'
table['A3'] = 'forth test'
data.save('excel_test.xlsx') # 一定要保存,可以创建文件
import openpyxl
data = openpyxl.Workbook() # 新建工作簿
# data.create_sheet('test') # 添加页;可重复添加 不同名称的 sheet 表单
table = data.active # 获得当前活跃的工作页,默认为第一个工作页
# table = data['test'] # 依据sheet名称获取 sheet对象内容
table.cell(1,1,'second test') # 行,列,值 这里是从1开始计数的
table.cell(2,1).value = 'third test'
table['A3'] = 'forth test'
data.save('excel_test.xlsx') # 一定要保存,可以创建文件
读取Excel文件
import openpyxl
data = openpyxl.load_workbook('excel_test.xlsx') # 读取xlsx文件
table = data['Sheet'] # 获得指定名称的sheet 对象
nrows = table.rows # 获得行数 类型为迭代器
ncols = table.columns # 获得列数 类型为迭代器
print(type(nrows))
for row in nrows:
print(row) # 包含了页名,cell,值
line = [col.value for col in row] # 取值
print(line)
# 读取单元格
print(table.cell(1,1).value)
在已存在excel文件中追加内容
wb = openpyxl.load_workbook('xxxx.xlsx') #打开已经存在的xlsx文件
wb.save('xxxx.xlsx') # 将工作簿保存为文件,如果原来的文件名存在,会覆盖原来文件
#导入库
import openpyxl as opxl
# row:代表行;colunm:列
# 加载一个excel,得到工作簿,excel_path对应的excel文件必须已存在
wb=opxl.load_workbook(excel_path)
# 通过表单名 选择表单名===表单=sheet
sheet= wb["表单名"] #sheet代表sheet对象,excel底部的sheet表格,sheet 为整个对象内容
# 修改/写入数据到某个单元格 cell=就Excel里面的单元格
# 行号和列表都是从1开始的 sh.cell(行,列)
# 重新赋值单元格内容
sheet.cell(2,3).value = "get" #赋值内容为get
或
sheet['C2'] = "get" #另一种赋值方法
或
sheet.cell(2,3,'get')
# 修改后要保存并关闭 filename如果不是打开的文件,就是另存为
wb.save(excel_path)
# 获取总行数:
max_row = sh.max_row
# 获取总列数:
max_column = sh.max_column
# 获取所有的数据,按行获取表格对象:
sheet.rows
# 获取表单所有名称
names = wb_obj.sheetnames
# 根据sheet表单索引来选择表单
sh = wb.worksheets[0]
版权声明:本文为weixin_44333597原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。