首页 > 解决方案 > yaml 将列表阻尼为不带引号的字符串

问题描述

我正在尝试在 python 的 yaml 文件中转储一个列表。然而,结果我得到了我的名单周围的报价。这是我的代码:

data = [679.0077123045467, 0.0, 356.3515350783442, 0.0, 672.9969017826554, 196.5430429125135,
    0.0, 0.0, 1.0]
data = str(data)

my_dict = {"matrix": {'rows': 3, 'cols': 3, 'data': data}}

结果:

matrix:
  rows: 3
  cols: 3
  data: '[679.0077123045467, 0.0, 356.3515350783442, 0.0, 672.9969017826554, 196.5430429125135,
    0.0, 0.0, 1.0]'

期望的结果:

matrix:
  rows: 3
  cols: 3
  data: [679.0077123045467, 0.0, 356.3515350783442, 0.0, 672.9969017826554, 196.5430429125135,
    0.0, 0.0, 1.0]

我怎样才能在没有引号的情况下转储它?谢谢你。

标签: pythonlistyaml

解决方案


只是不要这样做data = str(data)

Yaml 可以用破折号表示一个列表。不过不用担心,如果你在 Python 中重新加载它,它将再次成为一个正常的列表!


推荐阅读