[英]suggestion for correct python syntax
我正在嘗試設計一種包含類組合的配置模式。 假設我們有一堂課。
class Node(object):
def __init__(self,a,b):
self.a = a
self.b = b
現在我想設計一個配置模式,我想定義這樣的東西或它的變體。
Workflow = Node(1,2) & ( Node(4,2) | Node(5,6) ) & Node(1,7)
我實際上想將其保存在文件中,然后稍后再提取,然后斷開所有節點,並按此處定義的相同順序使用它們。 但這在語法上是不正確的。 您能建議我一些替代方法嗎? 我可以使用上面定義的相同模式嗎?
我不想使用字典和列表來保存它們,因為它們僅提供“,”作為分隔符。 而且字典沒有排序,我將松開定義配置或節點的順序。
不確定您的問題,但是如果要存儲一個任意的配置樹,我建議您盡可能使用“正常”數據類型。 這樣,您的配置數據將更加易於存儲和可移植性。
關於語義和順序,您始終可以執行以下操作(有點類似於Lisp):
conf = [
['Workflow',
['and',
['Node', 1, 2],
['or',
['Node', 4, 2],
['Node', 5, 6]
],
['Node', 1, 7]
]
]
]
如果對您的人來說太丑陋了,您可以使用YAML (盡管不是在核心Python庫中;請使用PyYaml ):
- - Workflow
- - and
- [Node, 1, 2]
- - or
- [Node, 4, 2]
- [Node, 5, 6]
- [Node, 1, 7]
(請注意,我對運算符使用小寫字母,對類使用大寫字母。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.