Писал ли свои типы данных
Python
Middle
Без компании
Писал ли свои типы данных
Ответы
В Python можно создавать свои типы данных с помощью классов. Это позволяет определять пользовательские структуры данных с собственными атрибутами и методами.
Пример:
```
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def distance_to_origin(self):
return (self.x ** 2 + self.y ** 2) ** 0.5
p = Point(3, 4)
print(p.distance_to_origin()) # 5.0
```
Также можно использовать `@dataclass` (Python 3.7+) для автоматической генерации `__init__`, `__repr__` и других методов:
```
from dataclasses import dataclass
@dataclass
class Point:
x: float
y: float
def distance_to_origin(self):
return (self.x ** 2 + self.y ** 2) ** 0.5
```
Для более сложных случаев можно переопределять операторы (`__add__`, `__eq__` и др.) или использовать `typing.NamedTuple` для неизменяемых структур.