如何序列化列表中的转义字符串
How to serialize escaped strings in a list
我正在尝试 AWS 的 .yml 策略文档。问题是当我尝试自己转义时,我的字符串列表被双引号“”包围,即
- “'acm:AddTagsToCertificate'”。
当我什么都不做时,显示为
- acm:AddTagsToCertificate。
问题是我需要 .yml 中的最终结果看起来像
- 'acm:AddTagsToCertificate'
就我自己的排错而言,我尝试过使用双引号和单引号。我也尝试过对列表进行子类化以覆盖列表的序列化方式,直到其他 SO 答案表示不赞成为止。
这是显示我的问题的简化代码
import yaml;
data = {'apigateway:CreateDeployment': 6}
actions = [];
for key in data:
key = "\'" + key + "\'"
print(key)
actions.append(key);
with open('test.yml', 'w') as output:
yaml.dump(actions, output, default_flow_style=False)
在dump
中使用default_style="'"
:
import yaml
data = {'apigateway:CreateDeployment': 6}
actions = list(data.keys())
with open('test.yml', 'w') as output:
yaml.dump(actions, output, default_flow_style=False, default_style="'")
我正在尝试 AWS 的 .yml 策略文档。问题是当我尝试自己转义时,我的字符串列表被双引号“”包围,即
- “'acm:AddTagsToCertificate'”。
当我什么都不做时,显示为
- acm:AddTagsToCertificate。
问题是我需要 .yml 中的最终结果看起来像
- 'acm:AddTagsToCertificate'
就我自己的排错而言,我尝试过使用双引号和单引号。我也尝试过对列表进行子类化以覆盖列表的序列化方式,直到其他 SO 答案表示不赞成为止。
这是显示我的问题的简化代码
import yaml;
data = {'apigateway:CreateDeployment': 6}
actions = [];
for key in data:
key = "\'" + key + "\'"
print(key)
actions.append(key);
with open('test.yml', 'w') as output:
yaml.dump(actions, output, default_flow_style=False)
在dump
中使用default_style="'"
:
import yaml
data = {'apigateway:CreateDeployment': 6}
actions = list(data.keys())
with open('test.yml', 'w') as output:
yaml.dump(actions, output, default_flow_style=False, default_style="'")