小工具知识网

当前位置: 首页 > 行业知识 > Python办公—pandas读取Excel表格增加列、两列保持一致、删除列、修改列名、移动列、依条件修改单元格内容(附代码)

行业知识

Python办公—pandas读取Excel表格增加列、两列保持一致、删除列、修改列名、移动列、依条件修改单元格内容(附代码)

2026-11-08 10:27:43 来源:互联网转载

目录

  • 专栏导读
  • 背景
  • 插入一列
  • 插入多列
  • 删除一列
  • 列表头改名
  • 移动列
  • 依条件修改单元格内容(2个条件以内)
  • 依条件修改单元格内容(3个条件以上)
  • 两列保持一致
  • 结尾

    专栏导读

    • 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手

    • ️‍ 博客主页:请点击——> 一晌小贪欢的博客主页

    • 该系列文章专栏:请点击——>Python办公自动化专栏 求订阅

    • 文章作者技术和水平有限,如果文中出现错误,希望大家能指正

    • ❤️ 欢迎各位佬关注! ❤️

      背景

      • 大家都知道Python中处理Excel文件的办公库有很多,如:openpyxl、pandas、xlwings、xlrd这些我之前都有介绍过,还专门写(水)了一篇文章测试他们的读取时间,大家没看过的可以前去考古一下,点我直达

      • 选择pandas是因为读取的效率比openpyxl高一点,有时候我们想在pandas读取Excel时在某列插入几列,或者是修改单元格内的数据时,会经常忘记怎么用,我来记录一下,大家可以收藏一下

        插入一列

        • 如果还没有安装的同学,可以先安装一下

        • pip install pandas

        • 首先我们创建一个Excel文件作为测试数据,表头随便写一下

          • 假设我需要在B列后面插入一列,表头名为【爱好】代码如下

          • 因为B列为第2列,所以参数:loc=2,
            表头名参数:column='爱好'
            填充值参数:value=None(空值)

            import pandas as pddef test():    # 读取Excel文件    df = pd.read_excel('测试数据.xlsx')# 插入列    df.insert(loc=2, column='爱好', value=None)    # 保存修改后的DataFrame到新的Excel文件    df.to_excel('结果.xlsx', index=False)test()

            插入多列

            • 假设我需要在D列(班级)后面插入5列,表头名为【列1,列2,列3,列4,列5】代码如下

            • 参数如上,相同的

              import pandas as pddef test():    # 读取Excel文件    df = pd.read_excel('测试数据.xlsx')    # 插入列    for col_num in range(4, 9):        df.insert(loc=col_num, column=f'列{col_num-3}', value=None)    # 保存修改后的DataFrame到新的Excel文件    df.to_excel('结果.xlsx', index=False)test()

              删除一列

              • 如下:删除一列表头叫【寄件地区】

                df = pd.read_excel("test.xlsx", dtype=str, keep_default_na='')df.drop(columns=['寄件地区'], inplace=True)

                列表头改名

                • 如下:将某列表头【到件地区】修改为【对方地区】

                  df = pd.read_excel("test.xlsx", dtype=str, keep_default_na='')df = df.rename(columns={'到件地区': '对方地区'})

                  移动列

                  • 如下:将列【订单号】移动至最后一行

                    cols = df.columns.drop('订单号')  # 创建一个新的列顺序列表,将'订单号'放在最后  new_cols = cols.tolist() + ['订单号']  # 使用新的列顺序重新索引DataFrame  df = df.reindex(columns=new_cols)  

                    依条件修改单元格内容(2个条件以内)

                    • 如果A列【学号】

上一篇:腾讯云服务器怎么连接外网?

下一篇:手机怎么使用服务器ip?