python中 replace('\','/')为什么会报错

x='a\b\c\d'

x.replace('\','/')
为什么会报错

因为\是保留字符,所以使用时要进行转义:

    也就是说“\”也换成“\\”多加一个\,这样才能避免出错;

    另外还要注意在字符串前面增加r,避免转义:

>>> x='a\b\c\d'
>>> x.replace('\\','/')
'a\x08/c/d'
>>> print x.replace('\\','/')
/c/d 
>>> x=r'a\b\c\d' 
>>> x.replace('\\','/')
'a/b/c/d'
>>> print x.replace('\\','/') 
a/b/c/d

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-25
x.replace('\\','/')

这样就好了,\是转义字符

>>> x='a\b\c\d'

>>> x.replace('\\','/')

'a\x08/c/d'

>>> print x.replace('\\','/')

/c/d

>>> x=r'a\b\c\d'

>>> x.replace('\\','/')

'a/b/c/d'

>>> print x.replace('\\','/')

a/b/c/d

本回答被提问者采纳
相似回答