🏕️配置文件的选择
2023-7-24
| 2023-8-4
0  |  0 分钟
type
status
date
Jul 24, 2023 03:25 PM
slug
summary
tags
category
icon
password
引言:
 

问题现象说明

 
补以前的遗憾. 以前一直 用 python 默认config 文件, 但复杂点的不好弄.
从 7-21 折腾到现在, 尝试了 json toml yaml .
总结一下.
 

解决过程

 

配置语言的选择

原来一直 config, 省心.
后面换.env , 也挺不错. 问题和 config 一样, 复杂的配置, 比如 array of table [aot] 没法折腾.
json 不好注释, 且一行压缩模式简直反人类.一直用不惯.
yaml 一直有好感, 后面被 toml 安利, 先折腾 toml. 发现 aot [[A.B]] update 的 code掌握不了.
重新尝试 yaml, 似乎很舒服. 目前.
 

yaml 软件包的选择

 
原来用默认的 pyyaml , 发现两个缺点:
  1. 没法update注释, 生成 config 后, 注释会丢掉
  1. 没法控制缩进
 
后面选用如下库, 目前似乎完美解决上述问题.

总结

 
安装: pip install ruamel.yaml
核心 feature 介绍:

注释

notion image

缩进控制

The above example with the often seen yaml.indent(mapping=2, sequence=4, offset=2) indentation

分隔符

notion image

遗留问题&思考

 
技术折腾
  • Python
  • 工具
  • YAML
  • Jupyter Notebook 切换虚拟环境 (保姆级教程)_jupyter notebook 切换虚拟环境_KuuuH 的博客 - CSDN 博客pycharm 备份还原配置信息,包括 snippets
    目录