Python использует последовательность \ N для обозначения символа юникода, идентифицируемого его именем:
print('\N{LATIN CAPITAL LETTER A}')
A
Следовательно, если строка содержит последовательность '\N'
, которая не начинается с '\N{name}'
escape, SyntaxError
повышается, если только '\N'
не экранировано:
'Deskstop\\New'
или является частью необработанной строки
r'Deskstop\New'
или, если обратная коса sh является разделитель пути, замененный на передний sla sh
'Desktop/New'
Я подозреваю, что os.path.join
или его эквивалент pathlib
справится с этой ситуацией правильно, если использовать его так:
os.path.join(os.path.expandvars("%userprofile%"),"Desktop", "New")
но я не могу быть уверен на 100%, потому что я не на Windows машине.