Рубрики
Без рубрики

Параметры класса данных Python

Параметры класса данных Python На следующем порядке является определение функции Dataclass в … Теги с Python.

Параметры класса данных Python

Ниже приведен код функции dataclass в Python.

def dataclass(cls=None, /, *, init=True, repr=True, eq=True, order=False, unsafe_hash=False, frozen=False):

Существует шесть дополнительных параметров, которые принимает класс данных Python:

  • в этом
  • репре
  • уравнение
  • приказ
  • unsafe_hash.
  • замороженный

Мы узнаем об этих параметрах один за другим.

Параметр init. В классе данных Python

Это первый дополнительный параметр в классе данных Python и устанавливается на true по умолчанию. Это создает функцию инициализации для класса с атрибутами класса.

Пример:

@dataclass
class Student():
    name: str
    clss: int
    stu_id: int

В приведенном выше коде мы использовали DataClass Decorator и, таким образом, просто объявили атрибуты класса с помощью подсказки типа.

Когда параметр init настроен на I.e true. Код преобразуется в простой класс с определенной функцией init.

class Student():
    def __init__(self,name,clss,stu_id):
        self.name = name
        self.clss = clss
        self.stu_id = stu_id

Мы можем получить доступ к атрибутам класса.

Пример:

Атрибуты класса доступа

student = Student('HTD', 10, 17)

>>> print(student.name)

HTD

>>> print(student.clss)

10

>>> print(student.stu_id)

17

Теперь давайте сделаем параметр init как false и увидеть эффект.

@dataclass(init=False)
class Student():
    name: str
    clss: int
    stu_id: int


>>> student = Student('HTD', 10, 17)
Traceback (most recent call last):
  File ".\main.py", line 11, in 
    student = Student('HTD', 10, 17)   
TypeError: Student() takes no arguments

Когда в классе нет функции init, это означает, что нет атрибутов классов и, таким образом, класс студента не принимает аргументов.

Читайте о других Параметры класса данных Python от оригинального поста.

Оригинал: “https://dev.to/divshekhar/python-data-class-parameters-b0”