python3.7 openpyxl 在excel单元格中写入数据实例


Posted in Python onSeptember 01, 2020

本来我是想尝试,选中某个多个单元格复制到同一个sheet的其他位置,找了很多资料没有找到,目前只有这么一个办法,如果有大佬看到,欢迎补充请教。

# encoding:utf-8
import pandas as pd
import openpyxl
xl = pd.read_excel(r"E:\55\CRM经营分析表-10001741-1570416265044.xls")
xl.to_excel(r"E:\55\crms.xlsx")
wk = openpyxl.load_workbook(r"E:\55\crms.xlsx") #加载已经存在的excel
wk_name = wk.sheetnames
wk_sheet = wk[wk_name[0]]
 
wk_sheet.cell(row=2,column=2,value='大区') #在第二行,第二列下入“大区”数值
wk_sheet.cell(row=2,column=3,value='小区')
wk_sheet.cell(row=2,column=4,value='店铺编码')
wk_sheet.cell(row=2,column=5,value='店铺名称')
 
wk.save(r"E:\55\s.xlsx")

补充知识:【openpyxl】python中对Excel进行写入操作,写入一列或者一行(从excel中读出label和feature对应格式方法以及插入一行或者一列方法实现)

前言

最近在做expansion of datset,所以需要把扩展的dataset写入到excel中

我已经矩阵运算全部搞定,最终输出的是两个输出 labels 和 features

自己整理为以下格式

label = [[0],
     [1],
     [2],
     [3]
     ]
feature = [
      [0.1, 0.2, 0.3, 0.4, 0.5],
      [0.11, 0.21, 0.31, 0.41, 0.51],
      [0.6, 0.7, 0.8, 0.9, 1.00],
      [1.1, 1.2, 1.3, 1.4, 1.5],
      ]

解决方案

先是准备用python带的xlrd xlrd 等包来操作感觉真的不太行

换思路,用第三方包openpyxl来操作

pip install openpyxl

官方文档在这里

https://openpyxl.readthedocs.io/en/stable/index.html

代码

废话不多说,show you my code

# coding=utf-8
from openpyxl import Workbook
import numpy as np

wb = Workbook()

ws = wb.create_sheet("che")
label = [[0],
     [1],
     [2],
     [3]
     ]
feature = [
      [0.1, 0.2, 0.3, 0.4, 0.5],
      [0.11, 0.21, 0.31, 0.41, 0.51],
      [0.6, 0.7, 0.8, 0.9, 1.00],
      [1.1, 1.2, 1.3, 1.4, 1.5],
      ]
#这个地方之所以 变成numpy格式是因为在很多时候我们都是在numpy格式下计算的,模拟一下预处理
label = np.array(label)
feature = np.array(feature)

label_input = []
for l in range(len(label)):
  label_input.append(label[l][0])

ws.append(label_input)
for f in range(len(feature[0])):

  ws.append(feature[:, f].tolist())
wb.save("chehongshu.xlsx")

结果生成一个excel,最后结果如下图:

python3.7 openpyxl 在excel单元格中写入数据实例

总结

openpyxl包用起来是真的方便,对于写入,只需要建立一个LIST进行append就好了,如果excel为空的那append就从第一行开始递增操作,你也可以理解为一个ws.append()操作就相当于写入一行,如果excel为有数据的时候,那写入操作从没有数据的那一行开始写入;这里也说一下本来想用Insert来着但是忽略了一个条件,就是insert有个前提条件就是For example to insert a row at 7 (before the existing row 7):,意思为插入之前你的数据的大小一定是比要插入的行数或者列数大的,也就是说插入只能插到里面,不能在边缘插。

插入核心参考代码

for col in range(len(label)):

  print col
  ws.insert_cols(col+1)

  for index, row in enumerate(ws.rows):
    #print row
    
     if index == 0:
      #row[col+1].value = label[col][0]
      print "label"
      print label[col]
    else:
      print "feature"
      print feature[col][index-1]
      #row[col+1].value = feature[col][index-1]

读取代码

python3.7 openpyxl 在excel单元格中写入数据实例

def create_data_expansion(path, sheet):
  data_init = pd.read_excel(path, sheet)
  # print data_init
  data_df = pd.DataFrame(data_init)
  print data_df
  data_df_transponse = data_df.T
  label_expansion = np.array(data_df_transponse.index)
  label_expansion_l = []
  for l in range(len(label_expansion)):
    label_expansion_l.append([l])
  feature_expansion = np.array(data_df_transponse)
  label_expansion = np.array(label_expansion_l)

  return label_expansion, feature_expansion

if __name__ == "__main__":
  path_name = "excel_demo.xlsx"
  sheet_name = "11"
  label, feature = create_data_expansion(path_name, sheet_name)
  print label
  print feature

结果:

python3.7 openpyxl 在excel单元格中写入数据实例

以上这篇python3.7 openpyxl 在excel单元格中写入数据实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python将mdb数据库文件导入postgresql数据库示例
Feb 17 Python
Python使用htpasswd实现基本认证授权的例子
Jun 10 Python
python使用Flask操作mysql实现登录功能
May 14 Python
python使用PIL和matplotlib获取图片像素点并合并解析
Sep 10 Python
Python如何通过百度翻译API实现翻译功能
Apr 02 Python
python开发入门——列表生成式
Sep 03 Python
Python基于Socket实现简易多人聊天室的示例代码
Nov 29 Python
python爬虫之爬取笔趣阁小说
Apr 22 Python
Python爬取某拍短视频
Jun 11 Python
pandas中对文本类型数据的处理小结
Nov 01 Python
关于pytest结合csv模块实现csv格式的数据驱动问题
May 30 Python
python数据分析之单因素分析线性拟合及地理编码
Jun 25 Python
python 将列表里的字典元素合并为一个字典实例
Sep 01 #Python
Python如何截图保存的三种方法(小结)
Sep 01 #Python
Python连接mysql方法及常用参数
Sep 01 #Python
python3:excel操作之读取数据并返回字典 + 写入的案例
Sep 01 #Python
Python+Selenium实现自动化的环境搭建的步骤(图文)
Sep 01 #Python
Django如何批量创建Model
Sep 01 #Python
python 解决selenium 中的 .clear()方法失效问题
Sep 01 #Python
You might like
PHP 数组教程 定义数组
2009/10/23 PHP
WordPress主题中添加文章列表页页码导航的PHP代码实例
2015/12/22 PHP
php利用ob_start()清除输出和选择性输出的方法
2018/01/18 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
JavaScript 学习 - 提高篇
2007/02/02 Javascript
出现“不能执行已释放的Script代码”错误的原因及解决办法
2007/08/29 Javascript
jqGrid随窗口大小变化自适应大小的示例代码
2013/12/28 Javascript
jQuery实时显示鼠标指针位置和键盘ASCII码
2016/03/28 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
Bootstrap中的fileinput 多图片上传及编辑功能
2016/09/05 Javascript
简单实现JavaScript图片切换效果
2016/11/28 Javascript
web前端开发中常见的多列布局解决方案整理(一定要看)
2017/10/15 Javascript
微信小程序template模版的使用方法
2019/04/13 Javascript
vue elementUI 表单校验功能之数组多层嵌套
2019/06/04 Javascript
Vue.js自定义指令学习使用详解
2019/10/19 Javascript
node.js中stream流中可读流和可写流的实现与使用方法实例分析
2020/02/13 Javascript
解决VUE项目使用Element-ui 下拉组件的验证失效问题
2020/11/07 Javascript
vue 避免变量赋值后双向绑定的操作
2020/11/07 Javascript
[02:13] 完美世界DOTA2联赛PWL DAY5集锦
2020/11/03 DOTA
Python+tkinter使用40行代码实现计算器功能
2018/01/30 Python
python中abs&map&reduce简介
2018/02/20 Python
详谈Numpy中数组重塑、合并与拆分方法
2018/04/17 Python
详解python中的装饰器
2018/07/10 Python
Django集成搜索引擎Elasticserach的方法示例
2019/06/04 Python
linux中如何使用python3获取ip地址
2019/07/15 Python
Python制作词云图代码实例
2019/09/09 Python
python实现四人制扑克牌游戏
2020/04/22 Python
MSC邮轮官方网站:加勒比海、地中海和世界各地的假期
2018/08/27 全球购物
美国时尚大码女装购物网站:Avenue
2019/05/24 全球购物
业务内勤岗位职责
2014/04/30 职场文书
党员干部民主生活会议批评与自我批评材料
2014/09/20 职场文书
家长高考寄语
2015/02/27 职场文书
2015年助理工程师工作总结
2015/04/03 职场文书
小学生作文之《压岁钱的烦恼》
2019/09/27 职场文书
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers
nginx 添加http_stub_status_module模块
2022/05/25 Servers