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

Python小程序 - 表格数值统计

  • 题设:Excel表格中,计算如下图所示不同颜色(蓝、黄、桔)单元格值:各颜色填涂的单元格值的总和
  • 条件:
    - Excle表格中
    - 分色标记,单元格有值
    - 开始列(当前为D),开始行(当前为6)随机设置
    - 下三角直角边长(当前为10个单元格)随机设置,与桔色单行长度相同(当前为10个单元格)
    - 计算:1)蓝色单元格中值总和、蓝色单元格中值总和、蓝色单元格中值总和;2)各色单元格的数量

1. 方法1:Excel选中对应颜色的单元格,自动生成格子数和单元格值总和

2. 方法2:Excel格式查找(前题,先标颜色)
       蓝:660   ;黄:110     ;桔:660

3. 方法3:宏(VBA编程,没做,也许找时间试)

4. 方法4:Numpy(构建列表,然后分别计算,没做,也许找时间试)    

5. 方法5:python数格子(也许是最笨的方法),生成Excel的sum函数,计数、求和 (忽略代码冗余)

###################################
# 2023.12
# Sum as request
#################################### 构建列组合
la = ['','A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
lb =    ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']sc = str.upper('D')  # 开始列,自动转成大写
##ec = 'AI' # 结束列
sr = 6    # 开始行
er = 37   # 结束行
bc = 10   # 下三角黄色边长
lw = 26   # English字母表长度li = 0   # 开始列数值
if len(sc) == 1:li = lb.index(sc)
else:li = la.index(sc[0]) * lw + lb.index(sc[1])
lai = li//26
lbi = li%26###################### up,上三角蓝色
##sum_up = 0         
up_str = '=sum('   # excle sum function string
up_cn = 0sr_up = sr
er_up = er - bc    # 上三角下边界
sc_up = sc
ec_up = li + (er - bc - sr)tlai = la[ec_up//26]
tlbi = lb[ec_up%26]
tc = er - bc - sr + 1  # 上三角边长for r in range(tc):ti = li + tc - 1 - rtlai = la[ti//26]tlbi = lb[ti%26]up_str = up_str + sc + str(sr_up + r) + ':' + tlai + tlbi + str(sr_up + r) + ','up_cn = up_cn + tc - rup_str = up_str + ")"
print("Up: ", up_str)
print("Up Count: ", up_cn)    ###################### mid,中间四边形桔色
##sum_mid = 0
mid_str = '=sum('  # excle sum function string
mid_cn = 0sr_mid = sr
er_mid = er - bc
sc_mid = li + 1
ec_mid = li + (er - bc - sr) + bctc = er - bc - sr + 1  # 桔色高度for r in range(tc):tsc = sc_mid + r         # 开始列tec = tsc + bc - 1    # 结束列tr = er_mid - r       # 行号  mid_str = mid_str + la[tsc//lw] + lb[tsc%lw] + str(tr) + ':' + la[tec//lw] + lb[tec%lw] + str(tr) + ','mid_cn = mid_cn + bcmid_str = mid_str + ")"
print("Mid: ", mid_str)
print("Mid Count: ", mid_cn)   ###################### down,下三角黄色
##sum_down = 0
down_str = '=sum('   # excle sum function string
down_cn = 0          # down cell countsr_down = er - bc + 1    # 下三角开始行
##sc_down = sc           # 下三角开始列
##ec_down = li + bc - 1  # 下三角结束列tlai = lai
tlbi = lbifor r in range(bc):ti = li + bc - 1 - rtlai = la[ti//26]tlbi = lb[ti%26]down_str = down_str + sc + str(sr_down + r) + ':' + tlai + tlbi + str(sr_down + r) + ','down_cn = down_cn + bc - rdown_str = down_str + ")"
print("Down: ", down_str)
print("Down Count: ", down_cn)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up:  =sum(D6:Y6,D7:X7,D8:W8,D9:V9,D10:U10,D11:T11,D12:S12,D13:R13,D14:Q14,D15:P15,D16:O16,D17:N17,D18:M18,D19:L19,D20:K20,D21:J21,D22:I22,D23:H23,D24:G24,D25:F25,D26:E26,D27:D27,)
Up Count:  253
Mid:  =sum(E27:N27,F26:O26,G25:P25,H24:Q24,I23:R23,J22:S22,K21:T21,L20:U20,M19:V19,N18:W18,O17:X17,P16:Y16,Q15:Z15,R14:AA14,S13:AB13,T12:AC12,U11:AD11,V10:AE10,W9:AF9,X8:AG8,Y7:AH7,Z6:AI6,)
Mid Count:  220
Down:  =sum(D28:M28,D29:L29,D30:K30,D31:J31,D32:I32,D33:H33,D34:G34,D35:F35,D36:E36,D37:D37,)
Down Count:  55

相关文章:

Python小程序 - 表格数值统计

题设:Excel表格中,计算如下图所示不同颜色(蓝、黄、桔)单元格值:各颜色填涂的单元格值的总和条件: - Excle表格中 - 分色标记,单元格有值 - 开始列(当前为D),…...

Unity | Shader基础知识(第一集:unity中最简单的shader)

目录 一、unity的shader 二、创建一个shader(在创建时,选前三种都可以) 三、内容解读 1.shader一直都在 2.我们写shader在写什么 四、没有被干预的shader(最简单的shader) 相关阅读 编写着色器概述 - Unity 手册…...

橘子学K8S01之容器中所谓的隔离

我们一直都在说容器就是一个沙盒,沙盒技术顾名思义就是像一个集装箱一样,把应用(服务,进程之类的)装起来的技术,这样每个进程在自己的沙盒中和其他的沙盒隔离开来,每个沙盒之间存在一个边界使得他们互不干扰&#xff0…...

利用svm进行模型训练

一、步骤 1、将文本数据转换为特征向量 : tf-idf 2、使用这些特征向量训练SVM模型 二、代码 from sklearn.model_selection import train_test_split from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.svm import SVC from sklearn.m…...

【Docker】WSL 2 上的 Docker 搭建和入门

▒ 目录 ▒ 🛫 导读开发环境 1️⃣ 安装安装Docker Desktop for Windows 2️⃣ 环境配置3️⃣ hello world第一次运行再次运行分析总结 📖 参考资料 🛫 导读 开发环境 版本号描述文章日期2023-12-14操作系统Win11 - 22H222621.2715WSL2 C:…...

pytorch环境配置

1.创建环境 conda create --name pytorch python3.11.5 2.激活环境 source activate pytorch 3.添加国内镜像源: conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsin…...

电子眼+无人机构建平安城市视频防控监控方案

电子眼(也称为监控摄像机)可以通过安装在城市的不同角落,实时监控城市的各个地方。它们可以用于监测交通违法行为、监控公共场所的安全以及实时监测特定区域的活动情况。通过电子眼的应用,可以帮助警方及时发现并响应各类安全事件…...

mysql binlog_ignore_db参数的效果详解

​ 我们知道 binlog 会记录数据库所有执行的 DDL 和 DML 语句(除了数据查询语句select、show等)。 我们可以在mysql配置文件中关闭binlog [mysqld] skip-log-bin注意默认情况下会记录所有库的操作,那么如果我们有另类需求,比如说只让某个库记录 binglog 或排除某个库记录…...

HI3559AV100和FPGA 7K690T的PCIE接口调试记录-续

上文https://blog.csdn.net/fzktongyong/article/details/134963814?spm1001.2014.3001.5501 上一篇文中PCIE实测速度和理论计算有较大偏差,经过尝试后有所提升。 1、提升效果 1)、RC写操作,实测速度817MB/s(410407&…...

vivado约束方法4

时序约束向导 定时约束向导确定合成或上缺少的定时约束实现的设计。它分析了网表、时钟网络连接和现有的定时限制,以便根据《超快设计方法指南》提供建议用于FPGA和SoC(UG949)。以下11涵盖了三类约束页面,然后是摘要。包括以下步…...

LeetBook学习-C语言-数组

1.数组的操作 1.1 读取元素 知道内存地址可以快速访问,时间复杂度为O(1) 1.2 查找元素 从首地址开始,逐个查找,最坏时间复杂度为O(N) 1.3 插入元素 插入元素,首先位置要腾空,而后执行插入操作。 1.4 删除元素 删除掉某…...

23种策略模式之策略模式

23种策略模式之策略模式 文章目录 23种策略模式之策略模式前言优缺点使用场景角色定义UML模拟示例小结 前言 在软件开发中,设计模式是为了解决常见问题而提供的一套可重用的解决方案。策略模式(Strategy Pattern)是其中一种常见的设计模式&a…...

【笔试强化】Day 2

文章目录 一、选择1.2.(写错)3.4.5.6.(不会)7.(不清晰)8. (不会)9.10.(写错) 二、编程1. 排序子序列解法:代码: 2. 倒置字符串解法&am…...

windows禁用系统更新

1.在winr运行框中输入services.msc,打开windows服务窗口。 services.msc 2.在服务窗口中,我们找到Windows update选项,如下图所示: 3.双击windows update服务,我们把启动类型改为禁用,如下图所示&#xff…...

ES6原生音乐播放器(有接口)

视频展示 ES6音乐播放器 项目介绍 GutHub地址:GitHub - baozixiangqianchong/ES6_MusicPlayer: 音乐播放器 ES6_MusicPlayer 是基于JavaScriptES6Ajax等通过原生构建的项目。能够充分锻炼JS能力。 本项目有主页、详情页、歌单页面三部分组成 ├── assets&…...

Django和ECharts异步请求示例

前提条件 创建django项目,安装配置过程这里就不讲述了。 后端url http://127.0.0.1:8000/echarts/demo/ view视图函数 from django.http import HttpResponse import jsondef EchartsDemo(request):data {}categories ["衬衫","羊毛衫",&…...

Java序列化、反序列化-为什么要使用序列化?Serializable接口的作用?

什么是序列化和反序列化? 把对象转换成字节序列把字节序列恢复成对象 结合OSI七层协议模型,序列化和反序列化是在那一层做的? 在OSI七层模型中,序列化工作的层级是表示层。这一层的主要功能包括把应用层的对象转换成一段连续的二进…...

连锁零售企业如何优化网络性能?

在传统的WAN网络中,分支机构通常通过专线或者MPLS连接到总部或数据中心,但这种连接受制于地理位置。而SD-WAN(Software-Defined Wide Area Network)这种创新的网络架构,它通过软件定义和虚拟化技术,将分支机…...

[已解决]HttpMessageNotReadableException: JSON parse error: Unexpected character:解析JSON时出现异常的问题分析与解决方案

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…...

华为OD机试 - 找数字(Java JS Python C)

题目描述 小扇和小船今天又玩起来了数字游戏, 小船给小扇一个正整数 n(1 ≤ n ≤ 1e9),小扇需要找到一个比 n 大的数字 m,使得 m 和 n 对应的二进制中 1 的个数要相同,如: 4对应二进制100 8对应二进制1000 其中1的个数都为1个 现在求 m 的最小值。 输入描述 输入一个…...

ElasticSearch - networking配置global

版本8.11 单机部署了一个节点 在elasticsearch.yml中 配置了network.host: 8.8.8.8(之前为127.0.0.1) 但启动服务失败 报错信息为: BindTransportException: Failed to bind to 8.8.8.8:[9300-9399] 为啥要配置8.8.8.8 是因为参考的官方说明 Networking | Elasticsearch Gu…...

GPT4停止订阅付费了怎么办? 怎么升级ChatGPT plus?提供解决方案

11月中旬日OpenAI 暂时关闭所有的升级入口之后,很多小伙伴就真的在排队等待哦。其实有方法可以绕开排队,直接付费订阅升级GPT的。赶紧用起来立马“插队”成功!亲测~~~ 一、登录ChatGPT账号 1、没有账号可以直接注册一个,流程超级…...

MySQL数据库,视图、存储过程与存储函数

数据库对象: 常见的数据库对象: 视图: 视图是一种虚拟表,本身是不具有数据的占用很少的内存空间。 视图建立在已有表的基础上,视图赖以建立的这些表称为基表。 视图的创建和删除只影响视图本身,不影响对…...

【Pytorch】学习记录分享3——PyTorch 自动微分与线性回归

【【Pytorch】学习记录分享3——PyTorch 自动微分与线性回归 1. autograd 包,自动微分2. 线性模型回归演示3. GPU进行模型训练 小结:只需要将前向传播设置好,调用反向传播接口,即可实现反向传播的链式求导 1. autograd 包&#x…...

Android Studio实现俄罗斯方块

文章目录 一、项目概述二、开发环境三、详细设计3.1 CacheUtils类3.2 BlockAdapter类3.3 CommonAdapter类3.4 SelectActivity3.5 MainActivity 四、运行演示五、项目总结 一、项目概述 俄罗斯方块是一种经典的电子游戏,最早由俄罗斯人Alexey Pajitnov在1984年创建。…...

【Hive】——DDL(DATABASE)

1 概述 2 创建数据库 create database if not exists test_database comment "this is my first db" with dbproperties (createdByAllen);3 描述数据库信息 describe 可以简写为desc extended 可以展示更多信息 describe database test_database; describe databa…...

【华为OD题库-092】单词加密-java

题目 输入一个英文句子,句子中包含若干个单词,每个单词间有一个空格需要将句子中的每个单词按照要求加密输出。要求: 1)单词中包括元音字符(‘aeuio’、‘AEUIO’,大小写都算),则将元音字符替换成’*) 2)单词中不包括元音字符&…...

构建一个简单的 npm 验证项目

构建一个简单的 npm 验证项目 0. 背景1. 构建过程1-1. 创建项目并初始化1-2. 安装 mjs 支持的 package1-3. 在 package.json 中添加 mjs 脚本1-4. 创建 index.mjs 文件1-5. 执行脚本 2. (Optional)环境变量配置 0. 背景 工作上需要验证一下 npm 程序,所以需要构建一…...

利用vue-okr-tree实现飞书OKR对齐视图

vue-okr-tree-demo 因开发需求需要做一个类似飞书OKR对齐视图的功能,参考了两位大神的代码: 开源组件vue-okr-tree作者博客地址:http://t.csdnimg.cn/5gNfd 对组件二次封装的作者博客地址:http://t.csdnimg.cn/Tjaf0 开源组件v…...

持续集成交付CICD:CentOS 7 安装SaltStack

目录 一、理论 1.SaltStack 二、实验 1.主机一安装master 2.主机二安装第一台minion 3.主机三安装第二台minion 4.测试SaltStack 三、问题 1.CentOS 8 如何安装SaltStack 一、理论 1.SaltStack (1)概念 SaltStack是基于python开发的一套C/S自…...