Какие изменения появились в Python 3
Python
Senior
Без компании
Какие изменения появились в Python 3
Ответы
Python 3 принёс несколько ключевых изменений по сравнению с Python 2:
- **Print стал функцией**
```
print("Hello") # Python 3
print "Hello" # Python 2 (устарело)
```
- **Unicode по умолчанию**
Строки (`str`) — это Unicode, а для байтов используется `bytes`.
- **Деление чисел**
`/` — всегда вещественное деление, `//` — целочисленное.
```
5 / 2 # 2.5 (Python 3)
5 // 2 # 2 (как в Python 2)
```
- **`range` вместо `xrange`**
`range` теперь возвращает генератор, а не список.
- **Изменения в синтаксисе**
- `except Error as e` вместо `except Error, e`
- `raise Exception(args)` вместо `raise Exception, args`
- **Удалены устаревшие конструкции**
`dict.has_key()`, старый стиль классов (`class A:` без `object`).
- **`input()` вместо `raw_input()`**
В Python 3 `input()` возвращает строку (как `raw_input()` в Python 2).
Эти изменения улучшили язык, но потребовали адаптации кода.