Получить имена всех полей в классе данных ⇐ Python

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

Сообщение Anonymous »

Я пытаюсь написать функцию для регистрации классов данных. Я хотел бы получить имена всех полей в классе данных и распечатать значение для каждого (аналогично тому, как вы можете написать функцию для печати словаря)
т. е.

Код: Выделить всё

import dataclasses

@dataclasses.dataclass
class Test:
a: str = "a value"
b: str = "b value"

test = Test()

def print_data_class(dataclass_instance):
fields = ... # get dataclass fields
for field in fields:
print(f"{field.name}: {field.value}")

print_data_class(test)
Желаемый результат:

Код: Выделить всё

"a": "a value"
"b": "b value"
Однако мне не удалось найти, как получить поля класса данных, кто-нибудь знает, как это можно сделать?


Подробнее здесь: https://stackoverflow.com/questions/731 ... -dataclass

Вернуться в «Python»