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


Groups > de.comp.lang.python > #5594 > unrolled thread

(named) Tuples und ihre Verwendung

Started byPatrick Frank <patrick.frank.042@gmail.com>
First post2019-12-02 11:20 -0800
Last post2019-12-16 14:38 +0100
Articles 3 — 3 participants

Back to article view | Back to de.comp.lang.python


Contents

  (named) Tuples und ihre Verwendung Patrick Frank <patrick.frank.042@gmail.com> - 2019-12-02 11:20 -0800
    Re: [Python-de] (named) Tuples und ihre Verwendung Rainer Fischbach <fischbach@ecs-gmbh.de> - 2019-12-02 20:50 +0000
    Re: [Python-de] (named) Tuples und ihre Verwendung Niko Wenselowski <niko@nerdno.de> - 2019-12-16 14:38 +0100

#5594 — (named) Tuples und ihre Verwendung

FromPatrick Frank <patrick.frank.042@gmail.com>
Date2019-12-02 11:20 -0800
Subject(named) Tuples und ihre Verwendung
Message-ID<f4baa969-3cbd-4621-a1ff-f39f4040cc31@googlegroups.com>
Hallo,

das Buch "Think Python" habe ich nur bis zum Kapitel zur Objekt Orientierten Programmierung gelesen, weil ich möglichst schnell an dem Kurs auf training.talkpython.fm teilnehmen wollte. Nun fiel mir dort bei dem Thema "named tuples" auf, dass ich den Sinn bzw. die bevorzugte Verwendung von Tuples gar nicht verstanden habe.

Könnte das bitte jemand mit einem anschaulichen Beispiel erklären?

Vielen Dank!

P.

[toc] | [next] | [standalone]


#5595 — Re: [Python-de] (named) Tuples und ihre Verwendung

FromRainer Fischbach <fischbach@ecs-gmbh.de>
Date2019-12-02 20:50 +0000
SubjectRe: [Python-de] (named) Tuples und ihre Verwendung
Message-ID<mailman.284.1575319983.25794.python-de@python.org>
In reply to#5594
Hallo Patrick

der Vorzug von Tupeln besteht vor allem darin, dass sie immutable Objekte sind, d. h. dass man sie auch als Keys in Dictionaries verwenden oder in Sets stecken kann. Das ist im realen Leben oft sehr hilfreich. 

Gruß


Rainer Fischbach
______________________________________________________

ECS
Engineering Consulting & Solutions GmbH
Ingolstädter Straße 47
92318  Neumarkt
DEUTSCHLAND

Tel.:                +49 (0)9181 - 4764-84
Fax:                 +49 (0)9181 - 4764-50
Mobil:               +49 (0)171  - 4141570
E-Mail:              fischbach(at)ecs-gmbh.de
Web:                 http://www.ecs-gmbh.de
______________________________________________________

Engineering Consulting & Solutions GmbH
Sitz der Gesellschaft: Neumarkt i.d.OPf.
Geschäftsführer: Wolfgang Dietzler, Björn Dietzler
Eingetragen im Handelsregister Nürnberg unter HRB: 13998 
USt.-IDNr. gemäß § 27a Umsatzsteuergesetz: DE 181055415

Hinweis zur Vertraulichkeit:

Die in dieser E-Mail enthaltenen Informationen sind vertraulich zu behandeln und nur für den/die dort genannten Empfänger bestimmt. Die Vertraulichkeit ist unter Berücksichtigung der einschlägigen Gesetze, insbesondere BDSG, durch den/die Empfänger sicherzustellen. Sofern Sie nicht der beabsichtigte Empfänger sind, ist das Speichern, die Weiterleitung oder das Kopieren dieser E-Mail strikt untersagt. Haben Sie diese Nachricht irrtümlicherweise erhalten, benachrichtigen Sie uns bitte umgehend und löschen das Dokument.

________________________________________
Von: python-de [python-de-bounces+fischbach=ecs-gmbh.de@python.org]&quot; im Auftrag von &quot;Patrick Frank [patrick.frank.042@gmail.com]
Gesendet: Montag, 2. Dezember 2019 20:20
An: python-de@python.org
Betreff: [Python-de] (named) Tuples und ihre Verwendung

Hallo,

das Buch "Think Python" habe ich nur bis zum Kapitel zur Objekt Orientierten Programmierung gelesen, weil ich möglichst schnell an dem Kurs auf training.talkpython.fm teilnehmen wollte. Nun fiel mir dort bei dem Thema "named tuples" auf, dass ich den Sinn bzw. die bevorzugte Verwendung von Tuples gar nicht verstanden habe.

Könnte das bitte jemand mit einem anschaulichen Beispiel erklären?

Vielen Dank!

P.
_______________________________________________
python-de maillist  -  python-de@python.org
https://mail.python.org/mailman/listinfo/python-de

[toc] | [prev] | [next] | [standalone]


#5601 — Re: [Python-de] (named) Tuples und ihre Verwendung

FromNiko Wenselowski <niko@nerdno.de>
Date2019-12-16 14:38 +0100
SubjectRe: [Python-de] (named) Tuples und ihre Verwendung
Message-ID<mailman.108.1576503984.11485.python-de@python.org>
In reply to#5594
Hi Patrick,

wie schon erläutert sind tuples erstmal immutable Aufzählungen.
Zur Anwendung kommen tuples oftmals dann, wenn die Daten nicht verändert 
werden können / sollen.

Named tuples machen die Verwendung von Tuples einfacher, weil man zur 
Adressierung der Elemente darin anstatt mittels Zugriff per Index diese 
direkt wie ein Attribut ansprechen kann.
Das erleichtert erstmal das Code-Verständnis, kann aber auch eine 
sinnvolle Grundlage sein, falls man später den Code mal umbauen will 
(bspw. zur Verwendung von eigenen Klassen oder wenn das Python aktuell 
genug ist mittels dataclasses).


Hier ist mal ein kleines Beispiel zur Arbeit mit named tuples:

   from collections import namedtuple
   from datetime import date

   Contract = namedtuple("Contract", "nr customer expiration_date")

   data = [Contract("A123", "Hans AG", date(2020, 1, 30)),
	  Contract("A124", "Hubert UH", date(2020, 2, 16)),
	  Contract("A125", "Wurst GmbH", date(2019, 12, 31))]

   for contract in data:
       print("Contract #%s with %s expires on %s" % contract)
       if contract.expiration_date < date(2020, 1, 1):
           print("ATTENTION: Contract %s will expire this year!" % 
contract.nr)



Viele Grüße

Niko

[toc] | [prev] | [standalone]


Back to top | Article view | de.comp.lang.python


csiph-web