Seite 1 von 1

Dictionary verändern

Verfasst: Mittwoch 24. Juni 2015, 13:46
von Lena
Hallo!
Ich habe ein Dictionary erstellt, bei der jedem Key mehrere Values zugeordnet sind. Nun habe ich eine Funktion dazu, in der der User dem Dictionary Values zuordnen kann.
Kann man dem Dictionary auch noch Keys zuordnen? Wenn ja wie? Also mit den values habe ich das einfach mit .append() gemacht...

Und noch eine zweite Frage^^...wenn ich möchte, dass diese Werte die vom User verändert werden auch beim nächsten Mal, wenn das Programm gestartet wird noch gespeichert sind, geht dass dann nur, wenn ich das Dictionary in einer Textdatei speichern lasse?

LG und ich freue mich schon Auf ANtworten :)

Re: Dictionary verändern

Verfasst: Mittwoch 24. Juni 2015, 13:47
von Kebap
Hier ist der Vorgängerthread, in dem man besagte Dicts und Lists bewundern kann: http://www.python-forum.de/viewtopic.php?f=1&t=36544

Wie man neue Werte in ein Dictionary einfügt ist sehr sehr einfach und noch einfacher als der Weg den du bei Listen benutzt. Hast du schon mal in deine Python Anleitung geschaut, was dort dazu geschrieben steht?

Re: Dictionary verändern

Verfasst: Mittwoch 24. Juni 2015, 13:50
von BlackJack
@Lena: Mit welchem Tutorial arbeitest Du denn wenn da nicht mal gezeigt wird wie man einem Wörterbuch ein neues Schlüssel/Wert-Paar hinzufügt? In der Python-Dokumentation gibt es ein Tutorial und Anfängern wird oft Learn Python The Hard Way empfohlen (nicht vom Titel irritieren lassen :-)).

Wenn die Daten persistent sein sollen musst Du sie in der Tat speichern. Das JSON-Format könnte sich da beispielsweise anbieten. Dafür gibt es in der Standardbibliothek ein Modul.

Re: Dictionary verändern

Verfasst: Mittwoch 24. Juni 2015, 15:01
von bwbg
Neben den genannten Hinweisen möchte ich Dir den interaktiven Interpreter ans Herz legen (einfach python in der Eingabeaufforderung/Terminal starten). Hier kann man Befehle direkt ausprobieren oder (Standard-)Funktionen testen. Viele Fragen lassen sich bereit durch ein bisschen Ausprobieren beantworten.

Verwende dort die Funktionen dir und help. Mit ersterem kannst Du Dir eine Übersicht, über die verfügbaren Attribute (u. a. Methoden) eines Objektes abrufen. Der zweite gibt eine Hilfe zu einem Objekt oder im Speziellen zu einem Attribut aus.

Beispiel: Wörterbuch

Code: Alles auswählen

>>> dir({})
['__class__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__',
 '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__'
, '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '_
_reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof
__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items',
 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']
Beispiel: Liste

Code: Alles auswählen

>>> dir([])
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__doc__'
, '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__',
 '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__'
, '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__re
pr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '
__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'p
op', 'remove', 'reverse', 'sort']
Zum Abschluss ein Beispiel für help:

Code: Alles auswählen

>>> import math
>>> help(math.sin)
Help on built-in function sin in module math:

sin(...)
    sin(x)

    Return the sine of x (measured in radians).