【问题标题】:Accessing Excel files directly from RAM using Excel Writer使用 Excel Writer 直接从 RAM 访问 Excel 文件
【发布时间】:2023-03-10 22:58:01
【问题描述】:

pd.ExcelWriter 的文档中,我们看到以下代码 sn-p:

您可以将 Excel 文件存储在 RAM 中:

import io
df = pd.DataFrame([["ABC", "XYZ"]], columns=["Foo", "Bar"])
buffer = io.BytesIO()
with pd.ExcelWriter(buffer) as writer:
     df.to_excel(writer)

我的问题是我们如何才能访问 excel。我想拥有相同 excel 的 b64 编码版本而不将文件保存在系统中,这就是为什么我想将它保存在我的 RAM 中。有人可以帮忙吗?

感谢您的宝贵时间

解决方案:能够使用 buffer.getvalue() 访问文件。

【问题讨论】:

    标签: python python-3.x pandas pandas.excelwriter


    【解决方案1】:

    在您提供的 sn-p 中,Excel 文件已写入buffer,就像它存储在磁盘上一样。

    因此,您可以像从文件中读取一样以类似的方式读取它:

    pd.read_excel(buffer.getvalue())
    

    更多关于BytesIO的行为方式:

    【讨论】:

    • 感谢您的帮助。我试过这个,但它不工作。得到一个值错误。 ValueError:文件不是可识别的 Excel 文件。我们可以通过其他方式访问它吗?
    • 您好,可以使用 buffer.getvalue() 方法访问数据。感谢您的帮助 sophros
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-16
    • 1970-01-01
    • 2021-08-08
    • 1970-01-01
    相关资源
    最近更新 更多