Токенайзер не может осилить одиночный слэш на конце. Не знаю, собирались ли править, но в свете переделки токенайзера под новые ф-строки хотелось бы.
Всмысле не может
Ты там прям tokenize используешь или что? Я не могу найти MRE
"something\" — это на уровне токенайзера незакрытая строка, он хочет читать дальше. "something\\" — это корректная строка, но с учётом правил для raw — в конце два слеша. Первый вариант вполне можно заставить работать, но токенайзер понятия не имеет, что за зверь — рав строки и почему не надо жрать символ после л
Да вроде во всех языках так
Так — это как? (дописал r)
А про это что-то есть в доке?
Есть. Сказано, что нельзя, потому что так вышло.
$ ~/sdk/dotnet-sdk-7.0.302-linux-x64/dotnet run \ $ cat Program.cs Console.WriteLine(@"\");
В исходном сообщении не было r (аналог твоего @)
А можно ссылку
https://docs.python.org/3/reference/lexical_analysis.html#string-literal-concatenation (Предыдущий параграф)
Я еще это нашел. https://docs.python.org/3.12/faq/design.html?highlight=backslash#why-can-t-raw-strings-r-strings-end-with-a-backslash
Угу, я в курсе, в общем-то я исходники этого всего читал. Просто есть подозрения, что в свете переделок f-строк, это может быть уже не актуально.
Нет, актуально
Это сделали не усложняя токенайзер?
Я имею в виду что поведение такое и осталось
Обсуждают сегодня