re.sub()不替换表达式中的值

时间:2013-05-11 04:18:41

标签: python regex python-2.7

我想将v__a替换为z3Sigs,但以下代码不会这样做。

import re
SigOnDecision = ['v__a', '__Vdly__v__a']
x = "(1 & v__a) == 0"
for signs in SigOnDecision:
    p = "{}".format(signs)
    y = re.sub(p, "z3Sigs", x)
print y

此代码仅显示x的原始值,即(1 & v__a) == 0 任何人都可以指出错误

1 个答案:

答案 0 :(得分:2)

这是因为你没有修改y。您只能替换x

的值
y = re.sub(p, "z3Sigs", x)

修改x

x = re.sub(p, "z3Sigs", x)

或者将y设置为x并修改y

y = x

for signs in SigOnDecision:
    y = re.sub(p, "z3Sigs", y)