Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #5819

[Python-de] Re: dataclass: Unterschied zu automatischer Generierung

From c.buhtz@posteo.jp
Newsgroups de.comp.lang.python
Subject [Python-de] Re: dataclass: Unterschied zu automatischer Generierung
Date 2022-05-13 10:23 +0000
Message-ID <013a3cfd0c91a73055b920f9be9f45ad@posteo.de> (permalink)
References <f2138ea335d55c76b5e2433fc8710713@posteo.de>

Show all headers | View raw


Eine Konsequenz scheint zu sein, dass ich eine automatisch erzeugte 
dataclass nicht pickeln kann. Ich bekomme den Fehler 
"_pickle.PicklingError: Can't pickle <class 'types.X'>: attribute lookup 
X on types failed"

Wenn ich aber den Modulnamen ändere
x.__module__ = '__main__'
geht es auch mit Pickle.

Am 13.05.2022 10:06 schrieb c.buhtz@posteo.jp:
> Hallo,
> 
> meine Frage bezieht sich auf dieses StackOverflow-Posting:
> https://stackoverflow.com/q/72217470/4865723
> 
> Dort geht es darum, wie man aus den Keys eines dict automatisch eine
> dataclass erzeugen könnte. Erst einmal erscheint es einfach:
>>>> import dataclasses
>>>> d = {'a': 3, 'b': 7}
>>>> X = dataclasses.make_dataclass('X', d)
> 
> Aber es gibt hier im Ergebnis einen Unterschied zu einer regulär
> erzeugten dataclass.
>>>> X
> <class 'types.X'>
> 
> Regulär erzeugt
>>>> @dataclasses.dataclass
> ... class X:
> ...     a: int
> ...     b: int
> ...
>>>> X
> <class '__main__.X'>
> 
> In einem Fall "types.X" und im anderen "__main__.X". Warum ist das so
> und ist dieser Unterschied von Relevanz?
> 
> SG
> Christian
> _______________________________________________
> python-de Mailingliste -- python-de@python.org
> Zur Abmeldung von dieser Mailingliste senden Sie eine Nachricht an
> python-de-leave@python.org
> https://mail.python.org/mailman3/lists/python-de.python.org/
> Mitgliedsadresse: c.buhtz@posteo.jp

Back to de.comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

[Python-de] dataclass: Unterschied zu automatischer Generierung aus dict c.buhtz@posteo.jp - 2022-05-13 08:06 +0000
  [Python-de] Re: dataclass: Unterschied zu automatischer Generierung c.buhtz@posteo.jp - 2022-05-13 10:23 +0000
    [Python-de] Re: dataclass: Unterschied zu automatischer Stefan Behnel <python-de@behnel.de> - 2022-05-13 18:03 +0200

csiph-web