Какая в Python типизация
Python
Senior
Без компании
Какая в Python типизация
Ответы
Python использует **динамическую** и **сильную** типизацию.
- **Динамическая типизация** означает, что типы переменных проверяются во время выполнения, а не на этапе компиляции. Переменная может менять тип в процессе работы программы:
```
x = 42 # int
x = "hello" # str - тип изменился
```
- **Сильная типизация** означает, что неявные преобразования между несовместимыми типами запрещены. Например:
```
print("10" + 5) # TypeError: can only concatenate str to str
```
С Python 3.5+ появилась поддержка **аннотаций типов** (type hints), но они остаются необязательными и не влияют на выполнение кода (только для статического анализа):
```
def greet(name: str) -> str:
return f"Hello, {name}"
```