从hdf5和yaml文件中方便地保存和加载配置选项。
h5config的Python项目详细描述
h5config
h5config是一个python包,用于方便地保存和加载 来自磁盘的配置类。填充基本配置后 带有参数的类,h5config自动生成hdf5和 用于保存和加载该类的yaml后端。是的,这一切 信息可以进入单个数据库,但如果您喜欢 拥有一堆你可以窥视的单个文件的灵活性 一次一个,这个模块是给你的。
我写这个模块是为了支持我的实验控制基础设施, 其中一个关键目标是在 保存的数据:
experiment.h5 |-- raw/ | |-- thermocouple: [32757, 32731, 32796, 32789, 32809, ...] | `-- deflection: [29808, 29793, 29782, 29817, 29775, ...] |-- timeseries-config/ | |-- frequency: 0.1 | |-- run-time: 100 | |-- thermocouple-channel/ | | |-- conversion-coefficients: [-10.0, 0.000305180437934] | | `-- conversion-origin: [0.0] | |-- deflection-channel/ | | |-- conversion-coefficients: [-10.0, 0.000305180437934] | | `-- conversion-origin: [0.0] | `-- thermocouple-calibration: [25.08355e3, 7.860106e4] `-- environment-config/ |-- temperature: 20 `-- timestamp: 1311851980.750180
存储所有校准和转换系数可以得到 很快就复杂了。h5config将使您井然有序,并允许您 专注于定义配置选项而不陷入困境 簿记。
作为副作用,h5config还提供了一些支持系统的工具- 以及用户范围的配置文件。例如,pypiezo包 使用h5config自动检测并加载以下配置 文件:
$ cat ~/.config/pypiezo.yaml log-level: debug matplotlib: no
安装
套餐
gentoo
我已经为Gentoo打包了h5config。你需要layman和我的wtk overlay。安装时使用:
# emerge -av app-portage/layman # layman --add wtk # emerge -av dev-python/h5config
用法
有关简单示例,请参阅模块docstrings。
测试
使用以下命令运行内部单元测试:
$ nosetests --with-doctest --doctest-tests h5config
许可证
此项目在GNU General Public License Version 3或更高版本下分发。