用转义符分割字符串

Ala*_*lan 0 python split unicode-escapes

我正在尝试用Python中的转义字符分割字符串。

这就是我一直在尝试的方法:

s = "C:\Users\as\Desktop\Data\pdf\txt\RTX_IDS_1DYS_20170610_0000_220279611-650000624200.txt"
s.encode("string_escape").split("\\")
Run Code Online (Sandbox Code Playgroud)

运行它时,出现以下错误:

s = "C:\Users\as\Desktop\Data\pdf\txt\RTX_IDS_1DYS_20170610_0000_220279611-650000624200.txt"
       ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
Run Code Online (Sandbox Code Playgroud)

Mik*_*tty 5

给您的字符串加上前缀r-会将其转换为原始字符串,告诉python这\是一个文字\

s = r"C:\Users\as\Desktop\Data\pdf\txt\RTX_IDS_1DYS_20170610_0000_220279611-650000624200.txt"
parts = s.split("\\")
print(parts)
Run Code Online (Sandbox Code Playgroud)

输出:

['C:', 'Users', 'as', 'Desktop', 'Data', 'pdf', 'txt', 'RTX_IDS_1DYS_20170610_0000_220279611-650000624200.txt']
Run Code Online (Sandbox Code Playgroud)

有关字符串前缀的更多信息,请参见:

https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals