Todo el concepto erróneo sobre las cadenas en bruto de Python es que la mayoría de la gente piensa que la barra invertida (dentro de una cadena en bruto) es solo un carácter normal como todos los demás. No lo es. La clave para entender es la secuencia tutorial de esta pitón:
Cuando está presente un prefijo ' r ' o ' R ', un carácter que sigue a una barra diagonal inversa se incluye en la cadena sin cambios, y todas las barras diagonales inversas quedan en la cadena
Por lo tanto, cualquier carácter que siga una barra diagonal inversa es parte de una cadena sin formato. Una vez que el analizador ingresa una cadena sin procesar (no Unicode) y encuentra una barra invertida, sabe que hay 2 caracteres (una barra invertida y un carácter que le sigue).
De esta manera:
r'abc \ d ' comprende a, b, c, \, d
r'abc \ 'd' comprende a, b, c, \, ', d
r'abc \ '' comprende a, b, c, \, '
y:
r'abc \ ' comprende a, b, c, \,' pero no hay una cita final ahora.
El último caso muestra que, según la documentación, ahora un analizador no puede encontrar la cita de cierre, ya que la última cita que ve arriba es parte de la cadena, es decir, la barra invertida no puede ser la última aquí, ya que 'devorará' la cadena de caracteres de cierre.