我需要能夠採取使用OpenDocument格式公式語法的公式,它解析爲語法,Python可以理解,但沒有評估的變量,然後能夠多次與不斷變化的評估公式貴重物品的變數。 公式可以是用戶輸入,所以pyparsing允許我有效地處理公式語法,並清除用戶輸入。有很多pyparsing的例子可用,但所有的數學似乎都假定立即評估當前範圍內的所有內容。部分評價與pyparsing
對於上下文,我正在與工業經濟(生命週期評價,或LCA),其中,這些式中表示進程之間的材料或能量交換的量的模型工作。可變量可以是幾個參數的函數,例如地理位置。公式鏈和變量引用存儲在有向無環圖中,因此公式總是可以被簡單地評估。公式作爲字符串存儲在數據庫中。 我的問題是:
- 是否可以解析公式使得分析評估,也可以存儲在數據庫中(作爲一個字符串被evaled,或者別的什麼)?
- 這種方法是否有其他選擇?請記住,理想的解決方案是解析/寫入一次,並多次閱讀。例如,部分解析公式,然後使用ast模塊,儘管我不知道這可以用於數據庫存儲。
- 任何類似這樣的項目或庫的例子,我可以看看?我不是程序員,只是一個學生在空閒時間製作開源LCA軟件模型時試圖完成他的論文。
- 這種方法太慢了嗎?我希望能夠進行大量的蒙特卡羅運行,每次運行都可能涉及數以萬計的公式評估(這是一個很大的數據庫)。