如何将\
字符附加到python中的字符串的开头,它会抛出一个错误说
SyntaxError:扫描字符串文字时的EOL
每当字符串中出现下划线时,我需要附加\
例如:
__x_a
→\_\_x_a
这只需要为最初的下划线做
你可以使用re.sub
>>> import re
>>> s = "__x_a"
>>> new_s = re.sub(r'^_*', lambda x: x.group().replace('_', '\_'), s)
>>> print(new_s)
\_\_x_a
Python中的单个反斜杠是这样编写的:
"\\"
各种说服自己的方法:
>>> len("\\")
1
>>> print("\\")
\
>>> "\\\\\\\\\\\\\\\\\\"[0]
'\\'
>>> chr(92)
'\\'
>>> '\N{REVERSE SOLIDUS}'
'\\'
奇怪之处在于,因为反斜杠是转义字符,所以必须转义反斜杠本身。
那么,回答标题中的问题:
如何在python中将“\”附加到字符串的开头
您可以使用:
mystring = "\\" + mystring
在您的示例情况下,只转发前导下划线,尝试这样的事情:
>>> mystring = '__x_a'
>>> n = next((i for i,c in enumerate(mystring) if c != '_'), len(mystring))
>>> result = mystring.replace('_', r'\_', n)
>>> print(result)
\_\_x_a