【PyCharm Community Edition】:excel操作
Excel操作
- 相关模块
- openpyxl
- xlrd
- shutil
- 实例
相关模块
openpyxl
可以对.xlsx,.xlsm,.xltx,.xltm文件格式操作
- 打开文件:wb_xlsx = openpyxl.load_workbook(“文件名”)
- 新建文件:wb_xlsx = openpyxl.Workbook()
- 新建sheet表:wb_xlsx_sheet = wb_xlsx.create_sheet(title=“表名”)
- 打开指定sheet表:wb_xlsx_sheet = wb_xlsx.get_sheet_by_name(“表名”)
- 获取表的最大行号:wb_xlsx_sheet._current_row = wb_xlsx_sheet.max_row + 1#当前行指向最大行号+1
- 单元格赋值:wb_xlsx_sheet[‘A1’] = “类别” # A1单元格赋值“类别”
- 行赋值:wb_xlsx_sheet.append((“A”, 1, 2,3))#当前行依次赋值 A 1 2 3
- 保存文件:wb_xlsx.save(“保存名.xlsx”)
xlrd
可以对.et文件读取,高版本的xlrd 也不支持对et访问,因此需要将其版本回退至2.0一下比如:1.2.0
- 打开文件:wb_et = xlrd.open_workbook(“文件名完整路径”, ‘r’)
- 获取sheet数量:wb_et_sheet_len = len(wb_et.sheet_names()) # sheet 数量
- 打开指定sheet表:wb_et_sheet = wb_et.sheets()[sheet_i] # 获取第一张sheet_i表
- 获取表的最大行号:wb_et_nrows = wb_et_sheet.nrows # 获取最大行号
- 读取整行:wb_et_sheet.row_values(row_i)
shutil
shutil 里面有copy函数,用于备份文件
- 备份文件到指定路径:shutil.copy(文件名,路径)# 备份文件
实例
import datetime
import time
import shutil
import pywps
import openpyxl
import os
import xlrd
import AnalyzerMap_Cfg as map_cfg
import win32com.clientdef outputAsExcel(file):# 因为公司加密了.xlsx文件,不能读,因此只能新建# 1、新建一个excel文件# 2、如果.et文件存在则打开,拷贝.et文件所有内容到新的excel中(除Sheet表外)# 3、保存新的.xlsx及.et文件row_offset = 7fileName = "RAM及ROM使用量统计结果"fileName_extension = ".et"fileName_fullPath= os.getcwd() + '\\' + fileName+fileName_extensionfileName_is_exist = 0# 新建excel文件wb_xlsx = openpyxl.Workbook()# 如果存在.et文件,则打开 并 拷贝到新建的.xlsxif os.path.isfile(fileName_fullPath):fileName_is_exist = 1# 打开.et文件wb_et = xlrd.open_workbook(fileName_fullPath, 'r')print(wb_et.sheet_names()) # sheet 名称wb_et_sheet_len = len(wb_et.sheet_names()) # sheet 数量print(wb_et_sheet_len)if 1 == fileName_is_exist:# 如果存在.et文件,则拷贝sheet_i = 0while sheet_i < wb_et_sheet_len:# 逐张sheet表 操作if wb_et.sheet_names()[sheet_i] != "Sheet":wb_et_sheet = wb_et.sheets()[sheet_i] # 获取第一张sheet表wb_xlsx_sheet = wb_xlsx.create_sheet(title=wb_et.sheet_names()[sheet_i])wb_et_nrows = wb_et_sheet.nrows # 获取最大行号# 逐行copyrow_i = 0while row_i < wb_et_nrows:wb_xlsx_sheet.append(wb_et_sheet.row_values(row_i))row_i = row_i + 1#sheet_i = sheet_i + 1if "统计记录" not in wb_xlsx.sheetnames:wb_xlsx_sheet = wb_xlsx.create_sheet(title="统计记录")wb_xlsx_sheet.append(("类别","总量(Kb)","使用量(Kb)","剩余量(Kb)"))else:wb_xlsx_sheet = wb_xlsx.get_sheet_by_name("统计记录")#写入前准备:查找最大行wb_xlsx_sheet._current_row = wb_xlsx_sheet.max_row + 1#指向最大行号+1print("最大行号%d"%(wb_xlsx_sheet._current_row))wb_xlsx_sheet.cell(wb_xlsx_sheet._current_row, 1).value = file # 将分析的文件存在n行1列used_len = round(map_cfg.global_var.totalGlobalROM_A / 1024, 1)total_len = round(int(map_cfg.global_var.Global_ROM_A_Info[2], 10), 1)wb_xlsx_sheet.append(("Global_ROM", total_len, used_len, (total_len - used_len)))used_len = round(map_cfg.global_var.totalLocalRAM / 1024, 1)total_len = round(int(map_cfg.global_var.Local_RAM_Info[2], 10), 1)wb_xlsx_sheet.append(("Local_RAM", total_len, used_len, (total_len - used_len)))used_len = round(map_cfg.global_var.totalLocalRAMSelf / 1024, 1)total_len = round(int(map_cfg.global_var.Local_RAM_Self_Info[2], 10), 1)wb_xlsx_sheet.append(("Local_RAM_Self", total_len, used_len, (total_len - used_len)))used_len = round(map_cfg.global_var.totalGlobalRAM_A / 1024, 1)total_len = round(int(map_cfg.global_var.Global_RAM_A_Info[2], 10), 1)wb_xlsx_sheet.append(("Global_RAM_A", total_len, used_len, (total_len - used_len)))used_len = round(map_cfg.global_var.totalGlobalRAM_B / 1024, 1)total_len = round(int(map_cfg.global_var.Global_RAM_B_Info[2], 10), 1)wb_xlsx_sheet.append(("Global_RAM_B", total_len, used_len, (total_len - used_len)))wb_xlsx.save(fileName+".xlsx")wb_xlsx.save(fileName+".et")return相关文章:
【PyCharm Community Edition】:excel操作
Excel操作 相关模块openpyxlxlrdshutil 实例 相关模块 openpyxl 可以对.xlsx,.xlsm,.xltx,.xltm文件格式操作 打开文件:wb_xlsx openpyxl.load_workbook(“文件名”)新建文件:wb_xlsx openpyxl.Workbook()新建sheet表:wb_xlsx_sheet wb…...
证书显示未受信任,生成的证书过期
此时若是导入证书后,证书显示未受信任,则说明我们缺失最新的AppleWWDRCA证书 解决方案: 重新下载AppleWWDRCA并安装。即下载最新的AppleWWDRCA证书,双击安装到“登录”项的钥匙串下;然后再安装你的开发证书或者发布证书…...
VS+Qt+C++ GDAL读取tif图像数据显示
程序示例精选 VSQtC GDAL读取tif图像数据显示 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《VSQtC GDAL读取tif图像数据显示》编写代码,代码整洁,规则,…...
CSS 选择器-认识并应用选择器
CSS选择器是用来定位HTML或XML文档中的元素的模式。以下是一些常见的CSS选择器,以及对应的样例代码: 标签选择器:选择所有指定标签的元素。 示例代码: p {font-size: 16px; }类选择器:选择所有指定类名的元素。 示…...
【教程】Autojs使用OpenCV进行SIFT/BRISK等算法进行图像匹配
转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 此代码可以替代内置的images.findImage函数使用,但可能会误匹配,如果是对匹配结果要求比较高的,还是得谨慎使用。 runtime.images.initOpenCvIfNeeded(); importClass(java.uti…...
[庆国庆 迎国庆 发文]云计算的概念
庆国庆 迎国庆 国庆发文100%可得专属勋章 一年仅有一次哦 不要错过啦 去发布 https://activity.csdn.net/creatActivity?id10567&spm1011.2480.3001.6900 https://mp.csdn.net/edit?activity_id10567&spm1057.2600.3001.9674 云计算(cloud computing&…...
计算机网络-计算机网络体系结构-概述,模型
目录 一、计算机网络概述 二、性能指标 速率 带宽 吞吐量 时延 往返时延RTT 利用率 三、计算机网络体系结构 分层结构 IOS模型 应用层-> 表示层-> 会话层-> 传输层-> 网络层-> 数据链路层-> 物理层-> TCP/IP模型 一、计算机网络概述 计…...
对示例程序spinner_asyncio.py进行修改使其能运行
学习《流畅的python》第18章 使用asyncio包处理并发,运行示例18-2 spinner_asyncio.py的时候,程序报错如下: D:\fluentPy\chapter17>python spinner_asyncio.py File "D:\fluentPy\chapter17\spinner_asyncio.py", line 30 …...
Linux命令(93)之head
linux命令之head 1.head介绍 linux命令head用来查看文件的前N行内容;默认head查看前10行 2.head用法 head [参数] 文件 head常用参数 参数说明-n从头显示N行,默认显示10行,可以不写-q隐藏文件名,在查看两个及以上文件名的情况…...
使用Visual Studio调试排查Windows系统程序audiodg.exe频繁弹出报错
VC常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/124272585C软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...&a…...
WebSocket实战之六心跳重连机制
一、前言 WebSocket应用部署到生产环境,我们除了会碰到因为经过代理服务器无法连接的问题(注:该问题可以通过搭建WSS来解决,具体配置请看 WebSocket实战之四WSS配置 ),另外一个问题就是外网环境不稳定经常…...
Webpack 基础入门以及接入 CSS、Typescript、Babel
一、什么是 Webpack Webpack 是一款 JS 模块化开发的技术框架,其运作原理是将多个 JS 文件关联起来构成可运行的应用程序。 Webpack 拥有丰富的 plugins / loaders 插件生态圈,可以让 js 识别不同的语言如 .css, .scss, .sass, .json, .xml, .ts, .vue…...
postgresql-自增字段
postgresql-自增字段 标识列IdentitySerial类型Sequence序列 标识列Identity -- 测试表 create table t_user( -- 标识列自增字段user_id integer generated always as identity primary key,user_name varchar(50) not null unique );-- 自动生成序列 CREATE SEQUENCE public…...
SpringBoot中使用Servlet和Filter
为什么要把Servlet和Filter写在一起,因为使用方式很相似 两种方式 第一种,使用Servlet和Filter 使用Servlet 继承HttpServlet 注册Servlet 使用Filter 1.自定义过滤器 2.注册过滤器 这里注意一点 使用/**无效 至少我这2.4.5版本是这样 过滤所有请求用/* 那么其实还有…...
Monkey命令
shell, monkey, system, Android, 文件系统Monkey, 示例, 简介 一、Monkey测试简介 Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压 力测试,检测程序多久的时间会发生…...
力扣 -- 279. 完全平方数(完全背包问题)
解题步骤: 参考代码: 未优化代码: class Solution { public:int numSquares(int n) {const int INF0x3f3f3f3f;int msqrt(n);//多开一行,多开一列vector<vector<int>> dp(m1,vector<int>(n1));//初始化第一行…...
在将对象 => JSON格式时,无法序列化部分属性
问题现象: 在ssm项目中,一个controller返回Msg对象(自定义对象,包含三个属性,int code;String msg;HashMap map;同时这三个属性都有对应的get和set方法),我的map属性里面…...
用python表格初级尝试
Excel,我的野心 当我输入3,2 就表示在第3行第2列。的单元格输入数据input输入表头 (input内除了/,空格 回车 标点符号等 全部作为单元格分隔符)由我设置input输入的是行or列 给选项 1. 行 2. 列默认回车或没输入值是列由我设置起…...
【单片机】16-LCD1602和12864显示器
1.LCD显示器相关背景 1.LCD简介 (1)显示器,常见显示器:电视,电脑 (2)LCD(Liquid Crystal Display),液晶显示器,原理介绍 (3ÿ…...
AUTOSAR从入门到精通-基于 CAN 总线的汽车发电机智能调节器(下)
目录 4.4.3 CAN 通信软件实现 汽车发电机智能调节器试验与结果分析 5.1 试验方案设计...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
Python实现prophet 理论及参数优化
文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...
SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...
【C++】纯虚函数类外可以写实现吗?
1. 答案 先说答案,可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...
Sklearn 机器学习 缺失值处理 获取填充失值的统计值
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...
