Python:用括号标记替换字符串

时间:2017-01-11 23:01:22

标签: python string

我想使用replace函数修改以下字符串:

'hello (world)'

'hello \(world)'

然而,当我跑

'hello (world)'.replace('(', '\(')

它返回

'hello \\(world)'

知道如何实现预期的输出吗?

编辑: 问题是我正在尝试将这些新参数传递给mysql查询,并且双反向操作会在查询中结束,使其无效...... 'SELECT datetime, actual, forecast, prior FROM all-data.indicators_ft WHERE country="United States" AND name = "CPI \\(ex Food & Energy\\) % m/m"'

3 个答案:

答案 0 :(得分:1)

我认为你可能会混淆交互式python shell输出与字符串的ACTUAL内容相混淆:

>>>hello (world)'.replace('(', '\(')
hello \\(world)  

>>>print 'hello (world)'.replace('(', '\(')
hello \(world)

答案 1 :(得分:1)

你正确地做到了:

>>> print('hello (world)'.replace('(', '\('))
hello \(world)

答案 2 :(得分:0)

使用print将产生所需的结果

print('hello (world)'.replace('(', '\('))

输出

hello \(world)