我想在每个字母后面加上一个带有'\w'
字符的字符串。
例如:
my_string = 'asdfg'
我想要的是什么:
my_string = 'a\ws\wd\wd\wf\wg\w'
现在,我接近这个是先将每个字母存储到一个列表中:
list=[]
for i in my_string:
list.append(i)
然后将其与中间的\w
字符连接起来以形成我的新字符串。但是,我遇到了一些问题。
'\w'.join(list)
我得到一个双反斜杠字符而不是一个:
'q\\ww\\we\\wr\\wt\\wy\\wu\\wy\\wt\\wr\\we\\ws\\wd\\wf\\wt\\wy\\wu\\wi\\wo\\wk\\wn\\wn'
我非常感谢有任何帮助来解决这个问题。感谢。
答案 0 :(得分:3)
>>> for x in INDICATORS:
... if x in TEXT:
... print x
...
bird
不是角色。您可能会想到另一个转义字符,但\w
只评估为'\w'
,因为'\\w'
只是不存在。
哦,您可能还想简单地用\w
或list(my_string)
取代您的for循环 - 甚至用tuple(my_string)
取代整个东西 - 它更简单并且做同样的事情事情。为了获得预期的结果,您还需要将字符添加到字符串的末尾,如'[whatever character you actually wanted]'.join(my_string)
中所示。就像现在一样,你不会在最后一封信之后得到这个角色。