Zmęczony ręcznie wprowadzanie reprezentacji ciąg dla moich klas, zastanawiałem się, czy jest to pythonic sposób to zrobić automatycznie.Czy istnieje sposób automatycznego generowania implementacji __str __() w pythonie?
Chciałbym mieć wyjście, które obejmuje wszystkie atrybuty klasy i nazwy klasy. Oto przykład:
class Foo(object):
attribute_1 = None
attribute_2 = None
def __init__(self, value_1, value_2):
self.attribute_1 = value_1
self.attribute_2 = value_2
Wynikające w:
bar = Foo("baz", "ping")
print(str(bar)) # desired: Foo(attribute_1=baz, attribute_2=ping)
To pytanie przyszło do głowy po użyciu projektu Lombok @ToString w niektórych projektach Java.
Co Projekt Lombok dla Java? –
Redukcja kodu kotła. Poszukaj funkcji: https://projectlombok.org/features/index.html –
W rzeczywistości "redukcja kodu standardowego" nic nie znaczy. Lombok zajmuje się specyficznymi problemami Java. Szukanie "podobnego" narzędzia jest bezużyteczne, lepiej poprosić o coś bardziej konkretnego. –