当前位置: 首页 > news >正文

Openpyxl 插入数据添加数据

pip install xlwt
 

程序循环多次,每次向指定的excel中追加写入数据

# 使用openpyxl追加写入数据到Excel
import openpyxl
import os
from openpyxl.styles import Alignmentdef create_excel_xlsx(path, sheet_name):workbook = openpyxl.Workbook()sheet = workbook.activesheet.title = sheet_nameheader = ['id','sex','age','provience','job']sheet.append(header)alignment = Alignment(horizontal='center', vertical='center', wrap_text=True)sheet.alignment = alignmentworkbook.save(path)def write_excel_xlsx_append(path, value, truncate_sheet=False):# 如果不存在就创建该excelif not os.path.exists(path):create_excel_xlsx(path, 'Sheet1')#value = value.values #将dataframe转为arraydata = openpyxl.load_workbook(path)# 取第一张表sheetnames = data.sheetnamessheet = data[sheetnames[0]]sheet = data.activeif(truncate_sheet): #truncate_sheet为True,覆盖原表中的数据startrows = 0else:# print(sheet.title)  # 输出表名startrows = sheet.max_row  # 获得行数index = len(value)for i in range(0, index):for j in range(0, len(value[i])):sheet.cell(row=startrows + i + 1, column=j + 1, value=str(value[i][j]))#调整对齐alignment = Alignment(horizontal='center', vertical='center', wrap_text=True)data.alignment = alignmentdata.save(path)print("xlsx格式表格追加写入数据成功!")def read_excel_xlsx(path, sheet_name):workbook = openpyxl.load_workbook(path)# sheet = wb.get_sheet_by_name(sheet_name)这种方式已经弃用,不建议使用sheet = workbook[sheet_name]for row in sheet.rows:for cell in row:print(cell.value, "\t", end="")print()book_name_xlsx = 'xlsx格式测试工作簿.xlsx'
sheet_name_xlsx = 'xlsx格式测试表'
value3 = [["1111", "女", "25", "石家庄", "运维工程师"],["222", "男", "55", "南京", "饭店老板"],["333", "女", "27", "苏州", "保安"], ]write_excel_xlsx_append(book_name_xlsx, value3, False)
read_excel_xlsx(book_name_xlsx, 'Sheet1')

参考:使用openpyxl追加写入Excel的成功案例,以及遇到的坑_openpyxl 写入没报错,但是文件损坏-CSDN博客


http://www.mrgr.cn/news/34502.html

相关文章:

  • Linux git-bash配置
  • 利用 Vue.js 开发动态组件的实战指南
  • 自动化运维:提升效率与可靠性的关键
  • SpringBoot如何集成WebSocket
  • spring框架基础
  • 宋浩《线性代数》知识点卡
  • Python人工智能之路 - 第一篇 : 你得会点儿Python基础
  • Pointnet++改进59:全网首发MogaBlock(2024最新模块)|用于在纯基于卷积神经网络的模型中进行判别视觉表示学习,具有良好的复杂性和性能权衡
  • Kubernetes Pod调度基础
  • 链表练习包括(创建遍历插入删除逆置排序)
  • 常见协议及其默认使用的端口号
  • 全栈开发(二):springBoot3连接mysql数据库
  • Spring Boot | 使用 `@Scheduled`: 定时任务的实现与优化
  • 【论文速看】DL最新进展20240923-长尾综述、人脸防伪、图像分割
  • c语言面试字符串复制
  • Python练习宝典:Day 3 - 选择题 - 字符串与正则表达式、基础练习补充
  • C:内存函数
  • Python 二次开发金橙子打印软件:开启高效打印新旅程
  • 【已解决】键盘输入数字-使用JAVA语言实现键盘输入的数字再通过快速排序算法输出
  • 二期 1.4 Nacos安装部署 - Window版
  • 注册讲堂 | 医疗器械组合包类产品常见问题(2)
  • 【既约分数 / B】
  • ZH_qaq 博客公告
  • 测试面试题:Web端与APP端区别?
  • Linux下搭建iSCSI共享存储-(Linux-IO Target)
  • 【链表操作】链表长度