Wie um zu überprüfen, ob ein Objekt eine Instanz einer namedtuple?

Wie kann ich überprüfen, ob ein Objekt eine Instanz einer Benannte Tupel?

  • Sie müssen wissen, absolut, oder eine heuristische okay? Falls letzteres, können Sie prüfen, z.B. obj._asdict.__doc__ == 'Return eine neue OrderedDict die Karten Feldnamen, um Ihre Werte" (möglicherweise auch die anderen Faktoren).
  • Absolut, natürlich. Aber da wäre ich mit dieser "check" in eine assert - Anweisung nur (ich Schreibe eine Erweiterung zu namedtuples .. das mixin behauptet, dass es verwendet wird, mit namedtuple, wie seine Geschwister-Basis-Klasse), heuristische überprüfung kann auch in Ordnung sein. Ich denke, es lohnt sich hinzufügen Ihre __doc__ überprüfen zu Alex ' s code.
  • FWIW, dies ist eingereicht als einen "Fehler" (nicht sicher, ich Stimme mit): bugs.python.org/issue7796
Schreibe einen Kommentar