Технически, любое нечетное количество обратной косой черты, как описано в документации.
>>> r'\'
File "<stdin>", line 1
r'\'
^
SyntaxError: EOL while scanning string literal
>>> r'\\'
'\\\\'
>>> r'\\\'
File "<stdin>", line 1
r'\\\'
^
SyntaxError: EOL while scanning string literal
Похоже, что парсер мог просто рассматривать обратные слэши в необработанных строках как обычные символы (не в этом ли смысл необработанных строк?), но я, вероятно, упускаю что-то очевидное.