仔细看看字符串,它们都是单斜线。
In [26]: my_str[0]Out[26]: '\'In [27]: my_str[1]Out[27]: 'x'In [28]: len(my_str[0])Out[28]: 1
而且
my_str.replace('\','')不会起作用,因为这里的令牌是令牌
',它逃逸
'并等待另一个关闭
'。
使用
my_str.replace('\', '')替代
更新:再过几天,我意识到以下讨论也可能会有所帮助。如果带有转义符(
'\x'或
'\u')的字符串的含义最终是十六进制/
Unipre文字,则可以使用对其进行解码
escape_depre。
import precsprint(len(b'x32'), b'x32') # 1 hex literal, 'x32' == '2'print(len(b'\x32'), b'\x32') # 4 chars including escapesprint(precs.escape_depre('\x32', 'hex')) # chars->literal, 4->1# 1 b'2'# 4 b'\x32'# (b'2', 4)s = '\xa5\xc0\xe6aK\xf9\x80\xb1\xc8*x01x12$\xfbpx1e(4\xd6{;Z'ed, _ = precs.escape_depre(s, 'hex')print(len(s), s)print(len(ed), ed)# 49 xa5xc0xe6aKxf9x80xb1xc8*$xfbp(4xd6{;Z# 22 b'xa5xc0xe6aKxf9x80xb1xc8*x01x12$xfbpx1e(4xd6{;Z'
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)