How to prevent YAML to dump long line without new

2019-04-04 04:22发布

问题:

Whenever my option goes beyond certain limit, pyyaml converts it into two lines.

How to avoid this ?

e.g.

In [1]: x = "-c /home/user/test/test2/test23/tet/2s/test1/stest/longdirectory1/directory2/ --optnion12 --verbose"

In [2]: import yaml

In [3]: print yaml.dump([dict(ATTRIBUTES=[dict(CONFIG=x)])], default_flow_style=False)

WRONG ONE

- ATTRIBUTES:
  - CONFIG: -c /home/user/test/test2/test23/tet/2s/test1/stest/longdirectory1/directory2/
      --optnion12 --verbose

Which should be like

- ATTRIBUTES:
  - CONFIG: -c /home/user/test/test2/test23/tet/2s/test1/stest/longdirectory1/directory2/ --optnion12 --verbose

回答1:

Thanks @MathieuMarques for suggesting to look @ dump options and link provided, YAML documentation was not good enough to find it out.

Anyways solution is to specify width parameter for dump function.

i.e. yaml.dump(data, width=1000)