Als erstes müssen Sie entscheiden, ob die Datenstruktur veränderbar sein soll oder nicht. Wie bereits erwähnt, sind Listen veränderbar, Tupel dagegen nicht. Dies bedeutet auch, dass Tupel für Wörterbuchschlüssel verwendet werden können, was bei Listen nicht der Fall ist.
Meiner Erfahrung nach werden Tupel im Allgemeinen dort verwendet, wo Reihenfolge und Position sinnvoll und konsistent sind. Bei der Erstellung einer Datenstruktur für ein "Choose your own adventure"-Spiel habe ich mich beispielsweise für Tupel anstelle von Listen entschieden, weil die Position im Tupel sinnvoll war. Hier ist ein Beispiel aus dieser Datenstruktur:
pages = {'foyer': {'text' : "some text",
'choices' : [('open the door', 'rainbow'),
('go left into the kitchen', 'bottomless pit'),
('stay put','foyer2')]},}
Die erste Position im Tupel ist die Auswahl, die dem Benutzer beim Spielen angezeigt wird, und die zweite Position ist der Schlüssel der Seite, zu der diese Auswahl führt.
Tupel sind auch speichereffizienter als Listen, obwohl ich mir nicht sicher bin, wann dieser Vorteil offensichtlich wird.
Lesen Sie auch die Kapitel über Listen und Tupel in Python denken .