使用epjson文件格式编写e+脚本

eppy3000的Python项目详细描述


EPPY3000

https://img.shields.io/pypi/v/eppy3000.svghttps://img.shields.io/travis/pyenergyplus/eppy3000.svgDocumentation Status

使用epjson文件格式编写e+脚本

特点-目前为止:-)

  • 打开并读取一个具有someeppy功能的epjson文件。
  • 现在eppy功能只是部分的

背景

e+已经从idd/idf文本格式移动到json格式。Eppy读取旧的idd/idf格式。有必要让eppy读取json格式和/或有一个新的包来读取json格式。

名称中的内容

为什么这个包叫eppy3000?

这是一出关于python3000这个词的戏剧。Guido van Rossum在2007年谈到了Python,“我第一次想到Python3000可能是在2000年的一个Python会议上。这个名字是windows 2000上的一个名字。…<;snip>;…我们的想法是,python 3000将是第一个放弃向后兼容性的python版本,而将其作为未来最好的语言。”

eppy3000还将破坏与eppy的向后兼容性。此外,EPPY3000将只为python3编写。eppy3000和eppy将继续是建模的最佳脚本语言:-)

那么什么是eppy3000

这个项目试图读取json文件格式并像eppy一样工作。从零开始做这件事是有价值的。使原始eppy有用的点语法可以用eppy3000中的几行代码重新创建。要使点语法在原来的eppy中工作,需要大量的深入分析。eppy3000将json格式作为字典读取。包Munch(以前的Bunch)允许在字典中使用点格式语法。代码非常简单:

as_json = json.load(open(fname, 'r'))
for_dot_syntax = DefaultMunch.fromDict(as_json)

在这一点上,EPPY3000是一个探索,以找出什么是可能的。EPPY3000中的API在我们探索各种可能性时将不稳定。所以,现在不要将其用作生产代码:—)

艾比

怎么样?

EPPY将继续开发和维护。一个主要的任务是让eppy读取新的json格式。初步调查显示,开发这种功能并不难。在内部eppy将继续使用旧格式。希望这将使json读取功能变得非常简单。目前,e+在旧的idd/idf格式和新的json格式之间保持一对一的映射。此映射嵌入在文件energy+.schema.epjson中,指向一个简单的兼容性策略。

从长远来看,这可能不是一个可行的策略,因为e+可能会完全放弃idd/idf文件格式,从而破坏json和idd/idf之间的链接。在unmethours上的讨论线程似乎表明,未来大约有5年。

未来的可能性

在芝加哥举行的2018年simbuild大会上,有许多可能的人进行了讨论。最大的收获是json格式和dot语法的代码基础可以导致在建模文件格式之间的通用转换。这里的想法是,如果存在两个建模文件结构的Simult.JSON,则存在两个模型之间转换的可能性。

当然,证据就在布丁里。因此,我们将在e+和doe2.1e(或equest)之间以及在旧的idd和新的epjson之间编写一些快速而肮脏的转换程序。让我们看看情况如何。

学分

这个包是用Cookiecutteraudreyr/cookiecutter-pypackage项目模板创建的。

历史记录

释放

0.1.0(2019-06-06)

2019-06-06

  • 用于读取和写入IDF文件的函数
    • 国际空间站UE 3520
0.1.0(2018-10-15)
  • 第一个版本是pypi。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何向xsi:nil元素添加另一个属性?   Java抽象泛型方法,使用具体类型实现通配符   java使用pcap4j截断pcap文件   当我放置字母a、b和c时,java中的异常预期会下降   java设置活动对话框不可取消   接口类型变量上的Java克隆   使用Java或BouncyCastle对CSR(证书签名请求)进行安全解码/读取   java调用SavingsAccount对象上的函数并打印结果   java如何在Android应用程序上显示地图上的兴趣点(POI)并与之交互?   如果在JavaFX中的ResultSet中未找到任何内容,则显示java警报   java我将springboot和@component与@scheduled一起使用,它每12小时锁定一次   ApachePOI如何使用java删除包含字符串的word表的行   java如果对象(x,y)靠近其他对象(x,y)   从未对JMSException调用java JMS CachingConnectionFactory OneException方法   javascript使用java将HTML页面转换为MS word