我是 Python 的新手,并尝试阅读 YAML 文件。根据它的内容,我想创建 Python 对象。我正在使用 ruamel-yaml 库。就我而言,也许我有 Python-Classes Message、Signal 和 Signalgroup 等(参见示例文件)。
我的方法是读取 YAML 文件,检查给定关键字的每一行,然后创建相关对象并用数据填充它。我认为这是“老派”方法,也许有一种更有效的方法来处理文件。
也许使用函数 register_class/rep。创建标签“from_yaml”但由于键被索引它不起作用。
Message1:
Message2:
Message3:
有没有更专业的方法?
# Yaml Testfile
- ModuleName: myTestModule
- Version: 1.0
- ModuleNumbers: [96,97,98,99]
- Message1:
Name: AO3_
DLC: 8
Signal1:
Name: Temperature
Length: 16
Signal2:
Name: AnalogOut3
Length: 16
SignalGroup1: #Comment
Name: app_fcex
Type: Bitfield
Signal1:
Name: drive_ready
Length: 1
Signal2:
Name: error_active
Length: 1
Signal3:
Name: warning_active
Length: 1
Signal3:
Name: Temperatur 2
Length: 8
ValueTable:
Name: TempStates
Item0:
Name: INIT
Value: 1
Item1:
Name: RUN
Value: 2
Item2:
Name: DONE
Value: 3
Item3:
Name: ERROR
Value: 4
- Message2:
name: AO2_
object: RX2
DLC: 8