Почему строка это неизменяемый тип данных
Python
Middle
Без компании
Почему строка это неизменяемый тип данных
Ответы
В Python строки неизменяемы (immutable), потому что это позволяет оптимизировать память и безопасно использовать их в хеш-таблицах (например, как ключи в словарях). При изменении строки создаётся новый объект, а не модифицируется существующий.
**Пример:**
```
s = "hello"
s[0] = "H" # TypeError: 'str' object does not support item assignment
```
**Преимущества неизменяемости:**
- Безопасность: строки можно передавать между потоками без риска изменения.
- Кеширование: интернирование строк (например, для коротких строк) экономит память.
- Хешируемость: строки могут быть ключами в `dict`, так как их хеш не меняется.
**Как "изменить" строку?**
```
s = "h" + s[1:] # Создаётся новый объект "Hello"
```