Wygląda na to, że składnia ur""
została wyłączona w Pythonie 3. Potrzebuję tego! "Dlaczego?", możesz zapytać. Potrzebuję prefiksu u
, ponieważ jest to ciąg znaków Unicode, a mój kod musi działać w Pythonie 2. Jeśli chodzi o prefiks r
, to może nie jest to konieczne, ale format znaczników, którego używam, wymaga wielu odwrotnych ukośników i pomóż uniknąć błędów.Dosłowne wyrażenie w formacie unicode, które jest poprawne w Pythonie 2 i Pythonie 3?
Oto przykład, że robi to, co chcę w Pythonie 2, ale jest nielegalne w Pythonie 3:
tamil_letter_ma = u"\u0bae"
marked_text = ur"\a%s\bthe Tamil\cletter\dMa\e" % tamil_letter_ma
Po napotykając ten problem, znalazłem http://bugs.python.org/issue15096 i zauważyłem, że ten cytat:
Łatwo jest przezwyciężyć to ograniczenie.
Czy ktoś chciałby przedstawić pomysł na temat?
pokrewne: What exactly do "u" and "r" string flags do in Python, and what are raw string literals?
-1; to nie trafia w sedno pytania, czyli w jaki sposób napisać surowy dosłowny kod Unicode, który jest jednocześnie ważny w * obu * Pythonie 2 i Pythonie 3. –