Python. Ошибка os.path.splitext
Когда я использую данный путь(часть пути файла):
C:\Users
В функцииos.path.splitext()
То вылетает ошибка:
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
Как исправить?
Ответы (1 шт):
На языке Python в строках символ \ является символом экранирования.
Например \n - перевод строки.
Передавая путь C:\Users вы, считайте, сказали интерпретатору:
Считай мне такую строку: "C:", дальше идет символ \U, а дальше "sers".
А интерпретатор говорит:
Но я не знаю что это за символ \U
Пишите вот так:
C:/Users или вот так C:\\Users (т.к. \ также отключает экранирования экранируемых символов)
Второй вариант применяется автоматически при использовании префикса r перед строкой, делающего следующую за ним строку "сырой" (игнорирующей экранируемые символы).
>>> 'C:\Users'
SyntaxError: (unicode error) 'unicodeescape' codec can not decode bytes in position 2-3: truncated \UXXXXXXXX escape
>>> r'C:\Users'
'C:\\Users'