python3 - 带有{}符号的格式

时间:2018-04-12 12:20:21

标签: python-3.x

我对字符串

有问题
'replication = {\'class\' : \'NetworkTopologyStrategy\', \'datacenter1\' : {}};'.format(N)

为什么会回来:

replication = \{\'class\' : \'NetworkTopologyStrategy\', \'datacenter1\': {} };'.format(N)  
KeyError: "'class' "

1 个答案:

答案 0 :(得分:1)

格式化包含任意{}的字符串可能很时髦。

在这种情况下,您需要在其他{}中包围整个字符串,以逃避{应忽略的}format

N = 'xxx'
print('replication = {{\'class\' : \'NetworkTopologyStrategy\', \'datacenter1\' : {}}};'
      .format(N))

# replication = {'class' : 'NetworkTopologyStrategy', 'datacenter1' : xxx};