gpt4 book ai didi

Python - Pycel 问题

转载 作者:太空宇宙 更新时间:2023-11-03 19:42:03 26 4
gpt4 key购买 nike

我在 conda 中进行了 Pycel 的 pip 安装。

我正在 Jupyter Notebook 中执行此操作。

%matplotlib inline
from pycel import ExcelCompiler
from IPython.display import FileLink
import matplotlib.pyplot as plt

filename = "../python/pycel_files/example.xlsx"
print("Loading {}...".format(filename))

# load & compile the file to a graph
excel = ExcelCompiler(filename=filename)

# test evaluation
print("B1 is {}".format(excel.evaluate('Sheet1!B1')))
print("B2=(B1+5) is {}".format(excel.evaluate('Sheet1!B2')))

输出:符合预期

B1 是 10
B2=(B1+5) 为 15

但是如果我现在这样做:

print("Setting B1 to 200")
excel.set_value('Sheet1!B1', 200)

print("B2 is now %s (the same should happen in Excel)" % excel.evaluate(
'Sheet1!B2'))

我在 Jupyter 中得到了预期的输出:

Setting B1 to 200
B2 is now 205 (the same should happen in Excel)

问题:

  1. 但是在 Excel 中,单元格 B1 不会更新。 IE。它没有据称由 Pycel 设置的值 200。它仍然显示 10。
  2. 我在他们的示例中遇到了同样的问题 github .ipynb of Pycel文件。有人可以确认他们是否也面临同样的问题并且这看起来像是一个错误吗?
  3. 此外,如果我对其 example excel file 进行任何更改& 使用他们的 .ipynb 文件,matplotlib 图中没有显示任何内容。 Pycel 如何知道选择哪张表?它总是默认为sheet1吗?

最佳答案

所以这里对 Pycel 是什么和做什么存在误解。来自Pycel Readme :

Pycel is a small python library that can translate an Excel spreadsheet into executable python code which can be run independently of Excel. The python code is based on a graph and uses caching & lazy evaluation to ensure (relatively) fast execution.

所以回答您的问题:

However in excel, cell B1 is not updated.

Pycel 不会更改 Excel 文件。它从 Excel 文件中读取并从所需的单元格创建一个“编译”电子表格。

If I make any changes to their example excel file & use their .ipynb file nothing shows up in matplotlib graphs.

您可能需要重新编译 Excel 电子表格才能使结果显示在 Python 代码中。

How does the Pycel know which sheet to choose from? Does it default to sheet1 always?

Pycel 确实与工作表打交道。它适用于细胞。这些单元格可以来自工作簿中的任何工作表。

关于Python - Pycel 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60365359/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com