我正在尝试在字符串中插入反斜杠,但是当我这样做时:
s1='cn=Name Surname (123)'
s1[:17] + '\' + s1[17:]
我明白了
SyntaxError: EOL while scanning string literal
另外,尝试了这个,但它插入了 2 个反斜杠
s1[:17] + '\\' + s1[17:]
最后的字符串应该是这样的
s1='cn=Name Surname \(123\)'
这里:
>>> s1 = 'cn=Name Surname (123)'
>>> x = s1[:16]+'\\'+s1[16:-1]+'\\'+s1[-1:]
>>> x
'cn=Name Surname \\(123\\)'
>>> print x
cn=Name Surname \(123\)
>>>
您必须打印字符串。否则,您将看到\\
(在解释器中用于显示文字反斜杠)。
>>> s1='cn=Name Surname (123)'
>>> s1[:17] + '\\' + s1[17:]
'cn=Name Surname (\\123)'
看起来像是两个反斜杠,但实际上只包含一个反斜杠。
>>> print(s1[:17] + '\\' + s1[17:])
cn=Name Surname (\123)
>>> print s1[:17] + '\\' + s1[17:-1] + '\\' + s1[-1:]
cn=Name Surname (\123\)
如果您只是在 python 命令行解释器中输入它并按回车键,它将显示为两个反斜杠,因为解释器显示转义字符。但是,如果您将其保存到文件中,或者如果您在“打印”命令中使用它,它将抑制转义字符并打印实际值,在这种情况下它只是一个反斜杠。
这样的事情就足够了吗?
print(s1.replace('(', '\\(').replace(')', '\\)'))
for folder in Chart_Folders:
files = os.listdir(path + '\\' + folder)
print(files)
这确实有效