【问题标题】:Putting New Information Into Excel File Python将新信息放入 Excel 文件 Python
【发布时间】:2021-07-20 05:25:07
【问题描述】:

我有一个对单元格进行排序的脚本,它会挑选出特定的关键字并将它们放入一个新列中。我遇到的问题是,当输入新信息时,它会删除 excel 文件中的所有其他内容。我希望它把新信息放进去,而不是删除excel文件中的现有信息。

代码:

    #Import Pandas and Re
    import pandas as pd
    from pandas import ExcelWriter
    from pandas import ExcelFile
    import re


    #Opens excel Workbook
    excel_workbook = 'memory.xlsx'

    sheet1 = pd.read_excel(excel_workbook, sheet_name='Memory')
    excel_memory = sheet1['Description']

    #Search descriptions for PC4 & PC3
    MemType = re.findall('PC4|PC3|PC2', str(excel_memory))

    df2 = pd.DataFrame(MemType)
    writer = ExcelWriter('memory2.xlsx')
    df2.to_excel(writer,'Memory',startcol=6, startrow=1, index=False, header=False)
    writer.save()

表:

Part Number Manufacturer Description
752370-091 HP HP 32GB (1x32GB) 2RX4 PC4-2133 Registered Memory WITH 1 YEAR WARRANTY
716112-081 HP HP 32GB (1X32GB) 1Gx4 PC3-10600H MEMORY MODULE WITH 1 YEAR WARRANTY
752370-091 HP HP 32GB (1x32GB) 2RX4 PC4-2133 Registered Memory WITH 1 YEAR WARRANTY
752370-091U HP HP 32GB (1x32GB) 2RX4 PC4-2133 Memory with 1 year warranty
715166-S21 HP HP 32GB (1X32GB) 1Gx4 PC3-10600H MEMORY MODULE WITH 1 YEAR WARRANTY

【问题讨论】:

    标签: python excel sorting write


    【解决方案1】:

    如果您想附加到文件而不是覆盖它,请将mode='a' 传递给ExcelWriter

    在您的代码中,您将进行以下更改:

    writer = ExcelWriter('memory2.xlsx', mode='a')
    df2.to_excel(writer,'Memory',startcol=6, startrow=1, index=False, header=False)
    

    参考:Pandas docs

    【讨论】:

    • 我尝试添加新模式,但它会在工作簿中创建一个包含数据的新工作表。如何将其写入现有工作表或如何将其他数据带入新写入的工作表?
    • 您是否尝试过将sheet_name 参数传递给to_excel 以及您要附加到的工作表的名称?
    • 我尝试在这里添加它,它只是创建了一个新工作表。 df2.to_excel(writer,sheet_name='Memory',startcol=6, startrow=1, index=False, header=False)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-21
    • 2020-12-17
    • 1970-01-01
    • 1970-01-01
    • 2020-06-25
    • 2019-12-11
    • 1970-01-01
    相关资源
    最近更新 更多