python关于openpyxl的二次开发
from openpyxl import load_workbook
class Excel_util:
def __init__(self,path):
self.path=path
# 加载输入路径的文件
self.wb=load_workbook(self.path)
#获取excel的sheet页
def get_sheetname(self):
return self.wb.sheetnames
#输入指定sheetname
def __call__(self, name):
return self.wb[name]
#读取excel内容,name是sheet页的名字,start和end是行或者列的起始
def read_excel(self,name,start,end=None):
"""
:param name = sheetname
cell_range: util column(A-C) eg: start="A" end="C"
util row (1-3) eg: start=1 end=3
:return:
"""
#把start和end都设为大写
start=str(start).upper()
if not end:
end=start
end = str(end).upper()
sheet = self.__call__(name)[start:end]
try:
return [[cell.value for cell in _] for _ in sheet ]
except:
return [cell.value for cell in sheet]
#单个单元格写入数据
def write_cell_data(self,name,cellname,data):
cell=self.__call__(name)[cellname]
cell.value=data
self.wb.save(self.path)
#最后一行追加插入数据,需要list
def append_row_data(self,name,data: list):
self.__call__(name).append(data)
self.wb.save(self.path) # data="测试"
# data1=["ceshi"]
# a=Excel_util("D:\zhijing_work\测试数据\测试文件\yetangjian.xlsx").read_excel("Sheet1",1,3)
# print(a)
# b=Excel_util("D:\zhijing_work\测试数据\测试文件\yetangjian.xlsx")
# b.write_cell_data("Sheet1","B5",data)
# b.append_row_data("Sheet1",data1)
python关于openpyxl的二次开发的更多相关文章
- Github Python计算器开源项目 二次开发--增加函数图形
先上原项目链接:https://github.com/xhf79/Calculator_pyqt python+Qt 开发的计算器 原项目界面和功能如图所示: 科学计算的内容基本都有,但按照项目的提示 ...
- Python 学习笔记(二)开发环境的搭建
安装Python windows 下安装: 下载地址:https://www.python.org/downloads Python的版本 3.x 是趋势 2.x 还在被大量使用 至于使用2.x 还是 ...
- Python科学计算(二)windows下开发环境搭建(当用pip安装出现Unable to find vcvarsall.bat)
用于科学计算Python语言真的是amazing! 方法一:直接安装集成好的软件 刚开始使用numpy.scipy这些模块的时候,图个方便直接使用了一个叫做Enthought的软件.Enthought ...
- Python什么是二次开发的意义?python在.net项目采用
任何人都知道python在.net该项目是做什么的啊? 辅助用途,用作"二次开发"..net站点的话python主要是CGI才用.能够用python编写B/S程序. 解释一下二次开 ...
- Python之虚拟机操作:利用VIX二次开发,实现自己的pyvix(系列一)成果展示和python实例
在日常工作中,需要使用python脚本去自动化控制VMware虚拟机,现有的pyvix功能较少,而且不适合个人编程习惯,故萌发了开发一个berlin版本pyvix的想法,暂且叫其OpenPyVix.O ...
- Autocad中使用命令来调用python对Autocad二次开发打包后的exe程序
在Autocad中直接调用Python二次开发程序是有必要的,下面介绍一种方法来实现这个功能: 其基本思路是:先将二次开发的程序打包为可执行程序exe,然后编写lsp文件,该文件写入调用exe程序的语 ...
- 【转】Jenkins 二次开发 - Python
马克,备用: Jenkins 二次开发 https://testerhome.com/topics/14988?locale=zh-TW python-jenkins api 文档:https://p ...
- 最好最实用的PHP二次开发教程
◆二次开发 1.什么是二次开发? 二次开发,简单的说就是在现有的软件上进行定制修改,功能的扩展,然后达到自己想要的功能和效果,一般来说都不会改变原有系统的内核. 2.为什么要二次开发? 随着信息化技术 ...
- ODI KM二次开发手册
ODI KM二次开发手册 分类: ODI(16) 目录(?)[+] 1 引言 1.1 编写目的 本手册面向的读者对象为具备数据集成业务知识及对ODI操作了解的开发人员,作为其完成基于ODI基础上K ...
随机推荐
- java短信接入
1,注册一个中间公司的短信平台(比如网建) 2,找到密匙 3,找到链接案例 4,复制代码 下载jar包 import java.io.UnsupportedEncodingException;imp ...
- 已完成的python项目-环境离线部署
python环境离线部署 当前生产环境中,有很多基于python开发的工具需要使用. 由于python工具往往涉及到很多依赖,在线状态下,可以通过pip requirements来管理安装. 但有时候 ...
- 关于CSP-S2019的一篇游记
怎么讲呢? Day1:7:00左右从家里出发,准备还是做得比较充分,早饭也记得吃了.路上闭目养神了一会儿,7:50左右到了大门附近,和大家再次把一些自认为还是比较重要的数据结构之类的再复习了一下.进去 ...
- async同步异步
1.同步:var async = require("async"); async.series([step1, step2, step3],function(err, values ...
- mysql查询的时候没有加order by时的默认排序问题
有时候我们执行MySQL查询的时候,查询语句没有加order by,但是发现结果总是已经按照id排序好了的,难道MySQL就是为了好看给我们排序 如上图数据,是我查询了语句 SELECT * from ...
- Note -「动态 DP」学习笔记
目录 「CF 750E」New Year and Old Subsequence 「洛谷 P4719」「模板」"动态 DP" & 动态树分治 「洛谷 P6021」洪水 「S ...
- 利用 docker 部署 elasticsearch 集群(单节点多实例)
文章目录 1.环境介绍 2.拉取 `elasticserach` 镜像 3.创建 `elasticsearch` 数据目录 4.创建 `elasticsearch` 配置文件 5.配置JVM线程数量限 ...
- mongodb4.x 集群搭建
下载包 官网选择合适的操作系统版本下载tgz包 https://www.mongodb.com/download-center/community 部署结构 集群结构 典型的三分片Mongo集群如下图 ...
- 【第一期百题计划进行中,快来打卡学习】吃透java、细化到知识点的练习题及笔试题,助你轻松搞定java
[快来免费打卡学习]参与方式 本期百题计划开始时间:2022-02-09,今日打卡题已在文中标红. 0.本文文末评论区打卡,需要登录才可以打卡以及查看其他人的打卡记录 1.以下练习题,请用对应的知识点 ...
- Kali Linux解压包命令:
Kali Linux解压包命令: tar.gz格式压缩包: root@kali:~# tar -xzvf 压缩包.tar.gz -C /root/home/Desktop root@kali:~# c ...