You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Pandas每次运行脚本时在已有工作簿中新建工作表?

实现Pandas向已有Excel工作簿新增工作表的方法

要实现每次运行脚本时在已有Excel文件里新建工作表,核心是用pandas.ExcelWriter的追加模式,具体操作如下:

  • 先安装依赖库openpyxl(它支持对已有.xlsx文件的追加操作):

    pip install openpyxl
    
  • 修改你的代码,替换原有的df.to_excel(**File Path**)部分,改用ExcelWriter来指定追加模式和新工作表名称:

    import pandas as pd
    
    # 你的数据生成逻辑保持不变
    df = pd.DataFrame(zip(house_name,description_details,house_price,specs,ratings,cancellation_policy,urls),columns=['Property Name','Description','Price','Specifications','Ratings','Cancellation Policy','Link'])
    
    # 替换为你的Excel文件路径
    file_path = "目标文件路径.xlsx"
    
    # 以追加模式写入新工作表
    with pd.ExcelWriter(file_path, mode='a', engine='openpyxl', if_sheet_exists='new') as writer:
        # 自定义工作表名,加入时间戳避免重复
        df.to_excel(writer, sheet_name=f"房源数据_{pd.Timestamp.now().strftime('%Y%m%d_%H%M%S')}", index=False)
    

关键参数说明:

  • mode='a':设置为追加模式,不会覆盖原有文件内容
  • engine='openpyxl':必须指定该引擎,默认的xlsxwriter不支持对已有文件的追加操作
  • if_sheet_exists='new':若指定的工作表名已存在,会自动生成带后缀的新表;也可设为'replace'覆盖同名表
  • sheet_name:自定义新表名称,加入时间戳能确保每次运行的表名唯一,避免冲突

注意事项:

  • 仅支持.xlsx格式文件,.xls格式需使用xlrd和xlwt库,但该组合对新格式支持有限,推荐统一使用.xlsx
  • 若目标文件不存在,mode='a'会自动创建新文件并写入第一个工作表,无需额外判断

内容的提问来源于stack exchange,提问作者Clay Burnett

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 08:33:15