В чём разница между Python 2 и Python 3
Python
Senior
Без компании
В чём разница между Python 2 и Python 3
Ответы
Основные различия между Python 2 и Python 3:
- **Print**
В Python 2 `print` — оператор, в Python 3 — функция:
```
# Python 2
print "Hello"
# Python 3
print("Hello")
```
- **Деление чисел**
В Python 2 `/` — целочисленное деление для `int`, в Python 3 всегда возвращает `float`:
```
# Python 2
5 / 2 → 2
# Python 3
5 / 2 → 2.5
```
- **Unicode**
Python 2 использует `str` для байтов и `unicode` для текста, Python 3 — `bytes` и `str` (Unicode по умолчанию).
- **`xrange` vs `range`**
Python 2: `xrange()` — генератор, `range()` — список.
Python 3: `range()` — генератор, а `xrange()` удалён.
- **Исключения**
Python 3 требует новый синтаксис:
```
# Python 2
except Exception, e
# Python 3
except Exception as e
```
Python 2 поддерживался до 2020 года, Python 3 — современный стандарт с обратной несовместимостью для улучшений.