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

使用openpyxl调整Excel的宽度

逐行加载Excel,并将行宽调整为行中的最大字符数。
希望在打开 Excel 时能够看到所有字符。

失败代码:

#失败代码:
wb = openpyxl.load_workbook('./targetExcelFile.xlsx')
ws = wb.worksheets[0]for col in ws.iter_cols():max_length = 0column = col[0].columnfor cell in col:if cell.value == None:continueif len(str(cell.value)) > max_length:max_length = len(str(cell.value))ws.column_dimensions[column].width = adjusted_width

运行结果:

Traceback (most recent call last):File "pypy.py", line 10, in mainws.column_dimensions[column].width = adjusted_widthFile "/.pyenv/versions/3.7.8/lib/python3.7/site-packages/openpyxl/utils/bound_dictionary.py", line 25, in __getitem__setattr(value, self.reference, key)File "/.pyenv/versions/3.7.8/lib/python3.7/site-packages/openpyxl/descriptors/base.py", line 42, in __set__raise TypeError('expected ' + str(self.expected_type))
TypeError: expected <class 'str'>

我收到一个错误,所以我进行了调查。
如果你看一下调查的内容…

 - ws1.column_dimensions[column].width = adjustment_width+ ws1.column_dimensions[col[0].column_letter].width = adjustment_width由于在openpyxl 3及更高版本中,column_dimensions的下标已从列号的数值更改为列名称的字符串。

原来如此。

修正处:

# 修正前
column = col[0].column# 修正后
column = col[0].column_letter

修正后的代码

wb = openpyxl.load_workbook('./targetExcelFile.xlsx')
ws = wb.worksheets[0]for col in ws.iter_cols():max_length = 0column = col[0].column_letterfor cell in col:if cell.value == None:continueif len(str(cell.value)) > max_length:max_length = len(str(cell.value))ws.column_dimensions[column].width = adjusted_width

修改成功,没问题。

相关文章:

使用openpyxl调整Excel的宽度

逐行加载Excel&#xff0c;并将行宽调整为行中的最大字符数。 希望在打开 Excel 时能够看到所有字符。 失败代码&#xff1a; #失败代码&#xff1a; wb openpyxl.load_workbook(./targetExcelFile.xlsx) ws wb.worksheets[0]for col in ws.iter_cols():max_length 0colum…...

前端面试——CSS面经(持续更新)

1. CSS选择器及其优先级 !important > 行内样式 > id选择器 > 类/伪类/属性选择器 > 标签/伪元素选择器 > 子/后台选择器 > *通配符 2. 重排和重绘是什么&#xff1f;浏览器的渲染机制是什么&#xff1f; 重排(回流)&#xff1a;当增加或删除dom节点&…...

【C语言】结构体实现位段

引言 对位段进行介绍&#xff0c;什么是位段&#xff0c;位段如何节省空间&#xff0c;位段的内存分布&#xff0c;位段存在的跨平台问题&#xff0c;及位段的应用。 ✨ 猪巴戒&#xff1a;个人主页✨ 所属专栏&#xff1a;《C语言进阶》 &#x1f388;跟着猪巴戒&#xff0c;…...

IEEE RAS 机器人最优控制(Model-based Optimization for Robotics)学习资料

系列文章目录 前言 电气和电子工程师学会机器人模型优化技术委员会 一、学习资料 1.1 教程和暑期学校 2020 年 Memmo 欧盟项目暑期班2019年Memmo欧盟项目冬季学校Matthias Gerdts&#xff08;德国慕尼黑联邦国防军大学&#xff09;在拜罗伊特 OMPC 2013 上举办的最优控制教程…...

redis中缓存雪崩,缓存穿透,缓存击穿等

缓存雪崩 由于原有缓存失效&#xff08;或者数据未加载到缓存中&#xff09;&#xff0c;新缓存未到期间&#xff08;缓存正常从Redis中获取&#xff0c;如下图&#xff09;所有原本应该访问缓存的请求都去查询数据库了&#xff0c;而对数据库CPU和内存造成巨大压力&#xff0c…...

C_8练习题答案

一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。) 编写C语言程序一般需经过的几个步骤依次是(B)。A.编辑、调试、编译、连接 B.编辑、编译、连接、运行 C.编译、调试、编辑、连…...

Web漏洞分析-文件解析及上传(中)

随着互联网的迅速发展&#xff0c;网络安全问题变得日益复杂&#xff0c;而文件解析及上传漏洞成为攻击者们频繁攻击的热点之一。本文将深入研究文件解析及上传漏洞&#xff0c;通过对文件上传、Web容器IIS、命令执行、Nginx文件解析漏洞以及公猫任意文件上传等方面的细致分析&…...

使用Node.js创建接口

当使用Node.js创建接口时&#xff0c;有两种主要方式&#xff1a;使用Express框架和使用Node.js的HTTP模块。 Express框架方式&#xff1a; 总的来说&#xff0c;使用Express框架可以更快速地搭建和管理接口&#xff0c;而使用Node.js的HTTP模块则提供了更多底层控制和灵活性&…...

【起草】人人都应该有一个chatGPT助手

第一章&#xff1a;ChatGPT 简介 - 介绍 ChatGPT 的基本概念和工作原理 - 讨论 ChatGPT 在自然语言处理领域的重要性和应用价值 【起草】章节 1-1 介绍 ChatGPT 的基本概念和工作原理-CSDN博客 【起草】1-2 讨论 ChatGPT 在自然语言处理领域的重要性和应用价值-CSDN博客…...

TCP/IP详解——网络基本概念

文章目录 一、网络基本概念1. OSI 7层模型1.1 每层对应的协议1.2 每层涉及的设备1.2.1 物理层设备1.2.2 数据链路层设备1.2.3 网络层设备1.2.4 传输层设备1.2.5 交换机和路由器的应用1.2.6 问题 2. TCP/IP 4层模型3. 物理层传输介质3.1 冲突域 4. 数据链路层4.1 以太网帧结构4.…...

[Linux] ps命令详解

ps命令 ps命令用于显示当前系统中的进程状态信息。以下是ps命令的一些常见参数及其作用&#xff1a; ps命令的基本形式&#xff1a; ps这将显示当前用户自己的运行中的进程的快照。 参数选项&#xff1a; -a: 显示所有进程&#xff0c;包括其他用户的进程。 -u: 显示与用户相…...

QT 中基于 TCP 的网络通信 (备查)

基础 基于 TCP 的套接字通信需要用到两个类&#xff1a; 1&#xff09;QTcpServer&#xff1a;服务器类&#xff0c;用于监听客户端连接以及和客户端建立连接。 2&#xff09;QTcpSocket&#xff1a;通信的套接字类&#xff0c;客户端、服务器端都需要使用。 这两个套接字通信类…...

使用MIB builder自定义物联网网关的MIB结构

文章目录 物联网网关初识&#xff08;了解即可&#xff09;IoT的通用MIB库结构MIB Builder开发流程指导问题总结子叶没所属分组值范围不为0 物联网网关初识&#xff08;了解即可&#xff09; 网关又称网间连接器、协议转换器。简单说&#xff0c;物联网网关是一台智能计算机&a…...

特权FPGA学习笔记

C/C/system C-----vivado HLS------------->RTL门电路&#xff0c;省去了HDL语言的中间转换&#xff0c;可以看作是C向C#的演进&#xff0c;基于zynq面向以前使用C的开发人员&#xff0c;但是个人觉得&#xff0c;HDL存在且未被C取代&#xff0c;工具的着眼点就是面向底层调…...

利用阿里云 DDoS、WAF、CDN 和云防火墙为在线业务赋能

在这篇博客中&#xff0c;我们将详细讨论使用阿里云 CDN 和安全产品保护您的在线业务所需的步骤。 方案描述 创新技术的快速发展为世界各地的在线业务带来了新的机遇。今天的人们不仅习惯了&#xff0c;而且依靠互联网来开展他们的日常生活&#xff0c;包括购物、玩游戏、看电…...

Mysql的事务日志

Mysql的事务具有四个特性&#xff1a;原子性、一致性、隔离性、持久性。那么事务的四种特性分别是靠什么机制实现的呢&#xff1f; 事务的隔离性由锁机制来保证 事务的原子性、一致性、持久性则由redo log和Undo log来保证。 - redo log是重做日志&#xff0c;提供再写入操作&…...

三、Shell 环境

一、Linux 系统分类 在 Linux 中&#xff0c;常见的 Shell 有以下几种&#xff1a; Bourne Shell&#xff08;sh&#xff09;&#xff1a;最早的 Shell&#xff0c;由 Stephen Bourne 开发。它是大多数其他 Shell 的基础。Bourne Again Shell&#xff08;bash&#xff09;&am…...

2023年第三届产业数字化【金铲奖】重磅来袭!

做具备产业数字化价值的企业、案例标杆、资本机构的见证者、发现者、陪伴者。 出品|产业家 一年一度的金铲奖来了&#xff01; 在过去的一年时间里&#xff0c;我们清晰地看到&#xff0c;产业数字化的潮水更加汹涌澎湃且势不可挡&#xff0c;越来越多的企业开始寻求数字化…...

node.js安装和配置

软件介绍 Node.js是一个免费的、开源的、跨平台的JavaScript运行时环境&#xff0c;允许开发人员在浏览器之外编写命令行工具和服务器端脚本。 Node.js是一个基于Chrome JavaScript运行时建立的一个平台。 Node.js是一个事件驱动I/O服务端JavaScript环境&#xff0c;基于Googl…...

【周报2023.12.09】

周报2023.12.09 本周开展工作下周工作计划 本周开展工作 本周开展的工作的话一共是一下几点&#xff1a; 这三点的话是紧密相连的 逻辑这边需要考虑的东西很多 点击生成照片&#xff0c;然后获取生成照片的状态点击生成照片&#xff0c;然后获取生成照片的时间&#xff0c;并…...

贾龙栋与鸽姆智库:贾子哲学思想理论体系的构建、创新与全球影响 —— 基于跨学科视角的深度研究

贾龙栋与鸽姆智库&#xff1a;贾子哲学思想理论体系的构建、创新与全球影响 —— 基于跨学科视角的深度研究引言在人工智能技术迅猛发展与全球治理体系深刻变革的时代背景下&#xff0c;人类文明正面临前所未有的认知挑战与价值重构。一方面&#xff0c;技术能力的指数级增长与…...

K8s混沌工程叛变:随机宕机暴露的职场PUA

在云原生架构席卷软件世界的今天&#xff0c;Kubernetes&#xff08;K8s&#xff09;以其强大的编排能力&#xff0c;成为分布式系统稳定运行的基石。随之兴起的混沌工程&#xff0c;则扮演着“压力测试师”的角色&#xff0c;通过主动注入Pod宕机、网络延迟等故障&#xff0c;…...

遥感小白看过来!无需编程5分钟搞定Landsat8数据下载(2023最新版)

零代码获取Landsat8遥感数据的完整指南&#xff08;2023实战版&#xff09; 当第一次接触遥感数据时&#xff0c;许多非技术背景的研究者常被复杂的下载流程吓退。其实&#xff0c;获取Landsat8卫星影像完全可以像网购一样简单——不需要编写任何代码&#xff0c;甚至不需要理解…...

Radiant Player与Last.fm集成:如何实现无缝音乐记录

Radiant Player与Last.fm集成&#xff1a;如何实现无缝音乐记录 【免费下载链接】radiant-player-mac :notes: Turn Google Play Music into a separate, beautiful application that integrates with your Mac. 项目地址: https://gitcode.com/gh_mirrors/ra/radiant-player…...

颠覆视频剪辑:JianYingApi让自动化剪辑效率提升80%

颠覆视频剪辑&#xff1a;JianYingApi让自动化剪辑效率提升80% 【免费下载链接】JianYingApi Third Party JianYing Api. 第三方剪映Api 项目地址: https://gitcode.com/gh_mirrors/ji/JianYingApi 在短视频内容爆发的时代&#xff0c;视频创作者面临着三重核心痛点&…...

用仓颉语言搞定编译原理实验:从正则表达式到DFA的保姆级实现(附完整代码)

用仓颉语言实现编译原理实验&#xff1a;从正则表达式到DFA的实战指南 第一次接触编译原理实验时&#xff0c;看着那些晦涩的算法描述和数学符号&#xff0c;我完全不知道如何下手。直到用仓颉语言完整实现了从正则表达式到NFA再到DFA的转换过程&#xff0c;才真正理解了这些概…...

GanttProject:免费开源甘特图工具如何重塑项目管理流程

GanttProject&#xff1a;免费开源甘特图工具如何重塑项目管理流程 【免费下载链接】ganttproject Official GanttProject repository 项目地址: https://gitcode.com/gh_mirrors/ga/ganttproject 在项目管理工具层出不穷的今天&#xff0c;GanttProject以其完全免费开源…...

Claude Code教程(四)| Codex 配置(插件安装)

Claude Code教程&#xff08;四&#xff09;| Codex 配置&#xff08;插件安装&#xff09;一、核心定位&#xff08;一句话看懂&#xff09;二、前置准备&#xff08;必做&#xff09;2.1 核心环境要求&#xff08;极简&#xff09;2.2 关键说明&#xff08;重要&#xff09;三…...

如何快速配置跨平台鼠标连点器:终极效率提升指南

如何快速配置跨平台鼠标连点器&#xff1a;终极效率提升指南 【免费下载链接】MouseClick &#x1f5b1;️ MouseClick &#x1f5b1;️ 是一款功能强大的鼠标连点器和管理工具&#xff0c;采用 QT Widget 开发 &#xff0c;具备跨平台兼容性 。软件界面美观 &#xff0c;操作直…...

解决AMD显卡CUDA兼容性问题:ZLUDA技术实现与应用指南

解决AMD显卡CUDA兼容性问题&#xff1a;ZLUDA技术实现与应用指南 【免费下载链接】ZLUDA CUDA on AMD GPUs 项目地址: https://gitcode.com/gh_mirrors/zlu/ZLUDA 一、问题&#xff1a;AMD显卡的CUDA生态困境 1.1 硬件与软件的生态鸿沟 CUDA作为NVIDIA构建的专有计算平…...