前几天在Python最强王者群【鶏啊鶏。】问了一个
Python
自动化办公处理的问题,一起来看看吧。
各位大佬想请教下:原来我的表格序号为2800多行,通过openpyxl的delete_rows 删除了1000多行,但结果表的话这些序号并没有缩减 导致显出一大片的空白行,请问这个有什么方法可以处理吗?
二、实现过程
这里【吴超建】给了一个代码,如下所示:
from openpyxl import load_workbook
# 打开Excel文件
workbook = load_workbook('111.xlsx')
# 选择工作表
worksheet = workbook['Sheet1'] # 替换'Sheet1'为实际的工作表名称
# 删除单个行号为5的行,连同格式一起删除
worksheet.delete_rows(5)
# 删除行号从3到7的行(包括行号3和7),连同格式一起删除
worksheet.delete_rows(3, 7)
# 保存更新后的Excel文件
workbook.save('222.xlsx')
代码运行之后,测试无误,后来【东哥】也测试了下,也没有发现问题。
后来粉丝自己补充了下信息,如下图所示:
理论上来说,版本是3.1.2的不会存在这个问题的。
后来【隔壁😼山楂】给了一个提示,如下图所示,顺利地解决了粉丝的问题。
一句话推荐
爆火全网的原创提示词设计框架BROKE,带你5步掌握向人工智能提问的艺术
|
特色
系统:全面剖析ChatGPT应用技巧,带你从小白变身ChatGPT应用专家。
实用:内含开箱即用的“提示公式”,聚焦ChatGPT实际应用。
有思路,有办法,能落地:带你将ChatGPT真正转化为生产力,开启AI驱动的工作流程。
简单易读:深入浅出,循序渐进,内含60+个示例,适合初学者和进阶读者。
深度:理论结合实际,涵盖提示工程学科深度讨论,授人以鱼更授人以渔。
|
内容简介
本书是一本面向所有人的提示工程工具书,旨在帮助你掌握并有效利用以ChatGPT为代表的AI工具。学习完本书后,你将能够自如地将ChatGPT运用在生活和专业领域中,成为ChatGPT进阶玩家。
本书共分为9章,内容涵盖三个层次:介绍与解读、入门学习、进阶提升。第1~2章深入介绍与剖析了ChatGPT与提示工程,并从多个学科的角度探讨了提示工程学科。第3~5章演示了ChatGPT的实际运用,教你如何使用ChatGPT解决自然语言处理问题,并为你提供了一套可操作、可重复的提示设计框架,让你能够熟练驾驭ChatGPT。第6~9章讲解了来自学术界的提示工程方法,以及如何围绕ChatGPT进行创新;此外,为希望ChatGPT进行应用开发的读者提供了实用的参考资料,并介绍了除ChatGPT之外的其他选择。
本书聚焦ChatGPT的实际应用,可操作,可重复,轻松易读却不失深度。无论你是对ChatGPT及类似工具充满好奇,还是期待将其转化为生产力,本书都值得一读。此外,本书还可作为相关培训机构的教材。
|
延伸阅读
《ChatGPT时代:ChatGPT全能应用一本通》
|
|
作者简介
陈颢鹏,提示工程师,AI产品经理,毕业于北京邮电大学计算机学院。曾在滴滴自动驾驶、图森未来、字节跳动、美团等公司积累了行业经验,现就职于一家AI领域的独角兽公司。作为ChatGPT发布后的初期用户,他运用该技术重塑了工作流程,显著提高了工作效率,发明的ChatGPT提示设计框架在小红书(ID:陈财猫)上获得了40000+赞与收藏,被多次转载,并在多家公司内部被广泛分享。他负责本书主体内容的写作。
李子菡,硕士就读于香港科技大学计算机与工程系,本科毕业于北京邮电大学。研究的领域涉及大语言模型和Prompt,参与相关工作已在自然语言处理领域学术顶会ACL上发表,对人工智能领域及各种语言模型有着深入的了解。她是本书的科研顾问,参与了第一章的写作,并对本书进行了审阅。
|
大家好,我是皮皮。这篇文章主要盘点了一个
Python
自动化办公Excel列删除处理的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。
最后感谢粉丝【鶏啊鶏。】提问,感谢【吴超建】、【东哥】、【隔壁😼山楂】给出的思路和代码解析,感谢【雪山胖狐】等人参与学习交流。
【提问补充】温馨提示,大家在群里提问的时候。可以注意下面几点:如果涉及到大文件数据,可以数据脱敏后,发点demo数据来(小文件的意思),然后贴点代码(可以复制的那种),记得发报错截图(截全)。代码不多的话,直接发代码文字即可,代码超过50行这样的话,发个.py文件就行。
大家在学习过程中如果有遇到问题,欢迎随时联系我解决(我的微信:pdcfighting1),应粉丝要求,我创建了一些ChatGPT机器人交流群和高质量的Python付费学习交流群和付费接单群,欢迎大家加入我的Python学习交流群和接单群!
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。
---
--
---
---
---
--
---
End
---
--
---
--
---
---
--
-
往期精彩文章推荐:
欢迎大家
点赞,
留言,
转发,
转载,
感谢大家的相伴与支持
想加入Python学习群请在后台回复【
入群
】
万水千山总是情,点个【
在看
】行不行
/今日留言主题/
随便说一两句吧~~
def __init__(self):
self.wb =
openpyxl
.load_workbook("./
表
格名称.xlsx")
self.ws = self.wb.active
# 获取最大行
self.row = self.ws.max_row
# 获取最大列
self.co.
def
delete
_row(filename, sheet_name, exc_string, column_num):
# 载入工作簿
wb =
openpyxl
.load_workbook(filename)
print('excel have been opened')
# open the sheet
ws = wb[she
python3使用
openpyxl
删除
行列
在网上找了一下关于
openpyxl
删除
行列的方法,居然没找到,有说是
openpyxl
没有
这个方法的,然后就自己查了一下
'BREAK_COLUMN', 'BREAK_NONE', 'BREAK_ROW', 'HeaderFooter', 'ORIENTATION_LANDSCAPE', 'ORIENTATION_PORTRAIT', 'PAPERSIZE...
OpenPyXL
的`
delete
_
rows
()`方法本身并不直接提供
删除
格式的功能。当你
删除
Excel工作
表
中的行时,它会同时移除这些行及其内容,包括默认的单元格格式。这意味着,当你简单地调用`sheet.remove_
rows
()`,原有的格式就会一同消失。
然而,如果需要更精确地控制每一行的
删除
,并保持其他行的格式不变,你需要采用另一种策略。可以先复制一行,然后替换掉要
删除
的那一行,最后再
删除
复制过来的那行。这样可以在保留格式的同时
删除
特定行。以下是示例代码:
```python
from copy import copy
# 假设要
删除
行2的格式
original_row = sheet[row_index]
new_row = copy(original_row)
#
删除
原始的行2
sheet.remove_
rows
(row_index)
# 现在将复制的行2插入到原来的位置
sheet.insert_
rows
(row_index, new_row)
但是请注意,这种方法可能会导致性能下降,因为它涉及到频繁的行插入和移动操作。对于大型工作
表
,可能需要考虑其他更高效的方式来处理格式。