欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > Python Formulas模型以JSON格式文件导出导入

Python Formulas模型以JSON格式文件导出导入

2024/10/24 2:00:02 来源:https://blog.csdn.net/Humbunklung/article/details/140637845  浏览:    关键词:Python Formulas模型以JSON格式文件导出导入

1. 导入formulasjson

在加载模型之前,导入formulasjson包。

import formulas, json

2. 加载Excel模型

加载一个公式复杂的Excel模型,该模型耗时较长,我们可以观察使用json格式是否能更高效。

xl_model = formulas.ExcelModel().load('./workbook.xlsx').finish()

3. 导出为JSON文件

将模型转化为可JSON化的字典(dict)类,然后通过json.dumps输出到json文件中。

xl_dict = xl_model.to_dict()  # To JSON-able dict.with open('./xl_model.json', 'w', encoding='utf-8') as model_out:json.dump(xl_dict, model_out, ensure_ascii=False, indent=True) # to JSON, and save it to a file.

4. 导入JSON文件

读取JSON格式Excel模型文件,并以字典(dict)方式加载模型。事实上效果和直接加载Excel是一样的,耗时也差不多。

data = {}
with open('./xl_model.json', 'r', encoding='utf-8') as model_in:data = json.load(model_in)
loaded_model = formulas.ExcelModel().from_dict(data)  # From JSON.    

5. 计算示例

# model calculation
cal_res = loaded_model.calculate(inputs={"'[workbook.xlsx]管道计算 (混凝土管道简化指标)'!B3": 280},outputs=["'[workbook.xlsx]管道计算 (混凝土管道简化指标)'!AJ3"]
)
print(cal_res["'[workbook.xlsx]管道计算 (混凝土管道简化指标)'!AJ3"].value[0, 0])

计算结果:771.4635658334801

cal_res = loaded_model.calculate()
print(cal_res["'[workbook.xlsx]管道计算 (混凝土管道简化指标)'!AJ3"].value[0, 0])

计算结果:792.8609135167501

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com