gpt4 book ai didi

python - 转义单引号时出现问题

转载 作者:行者123 更新时间:2023-12-01 00:56:13 27 4
gpt4 key购买 nike

使用 ruamel.yaml 向 yaml 添加新值时,我很难转义单引号。

下面是我正在做的事情

import sys
from ruamel.yaml import YAML

yaml_doc = """\
Mappings:
Values:
'123': 'no'
"""

yaml = YAML()
yaml.preserve_quotes = True
data = yaml.load(yaml_doc)

new_value = data['Mappings']['Values']
new_value.insert(len(new_value), '456','' 'no'' ', comment="New Value")
new_value.insert(len(new_value), '789',' ''no' '', comment="New Value 2")
yaml.dump(data, sys.stdout)

使用此代码,我总是在插入的值的 no 之后/之前得到一个前导或尾随空格。

Mappings:
Values:
'123': 'no'
'456': 'no ' # New Value
'789': ' no' # New Value 2

如何插入带有单引号但没有尾随/标题空格的无值?

最佳答案

我不确定我是否完全理解您的要求,但您只是插入了 3 个字符串作为值并将它们连接起来。在

new_value.insert(len(new_value), '456','' 'no'' ', comment="New Value")

'' 'no'' ' 部分转换为 ''=<Empty String> 'no'=no ' '=<Space>

因此,如果您想要常规的 'no',只需执行以下操作:

new_value.insert(len(new_value), '456','no', comment="New Value")

关于python - 转义单引号时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56237423/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com