Некоторые основные отличия между Python 2 и Python 3 при работе со строками:
Поддержка кодировок. pythonlib.ru Python 3 нативно поддерживает Unicode, что решает множество проблем с кодировками, характерных для Python 2. pythonlib.ru В Python 2 строковое значение нужно определять посредством «u». otus.ru
Комбинирование текста и данных. pythonworld.ru В Python 3 любая попытка комбинировать текст и данные вызывает TypeError. pythonworld.ru В Python 2, если смешивать Unicode и 8-битные строки, это будет работать, если 8-битная строка содержит только 7-битные (ASCII) символы, но если она содержит не-ASCII символы, то возникает UnicodeDecodeError. pythonworld.ru
Функция print. pythonworld.ru otus.ru В Python 3 оператор print заменили функцией print(), при этом объект вывода нужно обязательно заключать в скобки. otus.ru Например, в Python 2 print «A|n», «B» напечатает «A|nB|n», а в Python 3 print(”A|n”, ”B”) напечатает «A|n B|n». pythonworld.ru dev.to
Универсальный режим перевода строк. stackoverflow.com В Python 3 open по умолчанию используется универсальный режим перевода строк (newline = None), в то время как в Python 2 open включён универсальный режим перевода строк только в том случае, если строка mode включает U. stackoverflow.com
Примеры полезных ответов Поиска с Алисой на вопросы из разных сфер. Вопросы сгенерированы нейросетью YandexGPT для актуальных тем, которые определяются на базе обобщённых запросов к Поиску с Алисой.