Hallo,
will ein dict verwenden. Falls ein Eintrag nicht in dem dict vorkommt will ich ihn auf '_' setzten.
wie macht man das?
Falls ein Eintrag nicht vorhanden ist gibt es eine Fehlermeldung. Das will ich vermeiden. Geht das mit try...
try: a=dict[tmp]
..?
try
Hi
Na ja, es gibt verschiedene Möglichkeiten - je nachdem, was Du genau brauchst. Ganz einfach wäre z. B.:
Aber irgendwie klingt das für mich, als ob bei Deinem Beispiel noch mehr drinsteckt
. Hoffe es hilft Dir trotzdem weiter ...
Gruß,
Christian
edit:
PS: Bitte keine Schlüsselwörter von Python (wie dict) im Code verwenden, denn sonst überschreibst Du deren Funktionalität und machst Dir bloß unnötigen Ärger.
Na ja, es gibt verschiedene Möglichkeiten - je nachdem, was Du genau brauchst. Ganz einfach wäre z. B.:
Code: Alles auswählen
d = {1:'a'}
if d.has_key(1): #True
mache_irgendwas
else:
d[1] = '-'

Gruß,
Christian
edit:
PS: Bitte keine Schlüsselwörter von Python (wie dict) im Code verwenden, denn sonst überschreibst Du deren Funktionalität und machst Dir bloß unnötigen Ärger.
Hi!
hth, joe
a = myDict.get(tmp,'_')Gast hat geschrieben:will ein dict verwenden. Falls ein Eintrag nicht in dem dict vorkommt will ich ihn auf '_' setzten.
hth, joe
Aber Achtung get setzt den Eintrag im dict nicht auf "_", wenn er nicht vorhanden ist, sondern gibt "_" nur zurück in diesem Fall!
Ich kann das Python Cookbook von Oreilly empfehlen, aber an sich ist Python so schön einfach
Gibt ja auch n paar gute Tutorials im Netz, und mit code lesen -- code schreiben hab ich python schneller gelernt, als es mit jedem Buch Möglich gewesen wäre...
Ich kann das Python Cookbook von Oreilly empfehlen, aber an sich ist Python so schön einfach

In dem Fall ist `setdefault()` geeignet:henning hat geschrieben:Aber Achtung get setzt den Eintrag im dict nicht auf "_", wenn er nicht vorhanden ist, sondern gibt "_" nur zurück in diesem Fall!
Code: Alles auswählen
In [3]: a = dict()
In [4]: a.setdefault('spam', '_')
Out[4]: '_'
In [5]: a
Out[5]: {'spam': '_'}