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


Groups > de.comp.lang.python > #5216

Ein Problem mit Dictionarie, oder das Schlüssel werte problem

Path csiph.com!news.swapon.de!weretis.net!feeder4.news.weretis.net!feeder5.news.weretis.net!news.tota-refugium.de!.POSTED!not-for-mail
From Manfred Gil <manfred-gil@t-online.de>
Newsgroups de.comp.lang.python
Subject Ein Problem mit Dictionarie, oder das Schlüssel werte problem
Date Tue, 28 Aug 2018 12:52:46 +0200
Organization diese und das
Lines 70
Message-ID <pm39hu$1sc$1@tota-refugium.de> (permalink)
Mime-Version 1.0
Content-Type text/plain; charset=UTF-8
Content-Transfer-Encoding quoted-printable
X-Trace tota-refugium.de 1535453566 1932 127.0.0.43 (28 Aug 2018 10:52:46 GMT)
X-Complaints-To abuse@news.tota-refugium.de
NNTP-Posting-Date Tue, 28 Aug 2018 10:52:46 +0000 (UTC)
Cancel-Lock sha1:vT3yvUg4NjWe9E2rMPQ3xPP0zuc=
X-Newsreader Claws Mail 3.14.1 (GTK+ 2.24.31; x86_64-pc-linux-gnu)
X-Operating-System Debian-stretch
X-User-ID eJwNyskBwCAIBMCWlGOFcmSF/ktI5j2u2OAxOMzHh9W6sUUQi0uKCeml6Kb8ZeoqO8vOi4lJi3LeR8EDU658VIEV8Q==
Face iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAElBMVEUSEQ9eW1Dkxz/6+fjQ w52JeEi7Imd/AAAACXBIWXMAAAsSAAALEgHS3X78AAAATnRFWHRSYXcgcHJvZmlsZSB0eXBlIGV4 aWYACmV4aWYKICAgICAgMjAKNDU3ODY5NjYwMDAwNGQ0ZDAwMmEwMDAwMDAwODAwMDAwMDAwMDAw MAqJuBZbAAAACXZwQWcAAAAwAAAAMADO7oxXAAABk0lEQVQ4y32TS3KDMAxAxQB7uyEHiGvvoSh7 sMSeJnD/q9Q/DBmYamNZz/oioM8ySkn7DbL2bHiUV+CODTflGXTSC5xBWwRAJzBAkPIEhLMWANUZ 3ETRt1CcAbcVdhdgmMZq5CsPsS6iufJ4EY7rFVg0WwNwblA5+Q/QCbADtLeewUxKcT/n1g8x0UVp c5Lt7Op4ANw+wfwOB+YxJoA5wlZXMnSwT788gmEbhUtSHMFWPuEnwK0WD6IOKUDISIckkFYk+KWl qHYgUvGIOKYkEeQJEQ5H0EETrERIbWoxgTLmQCLvsQNRhpqQELvmF3Kop17Ce+yJf6WsM7D8CMNF 7pcZoN5C4cLWlUXsiHY5bAKsmXn2c2BCPYkGI0BtHTGFrxX5RUz8jkBZ1tqKt8vOrC1bNgk4M6v5 5jyYvzQrtjqCICN7+8hWaaXNAahvwn66R92QA88ENCPPCSze4ycBI6WQdVBXOoYy/ndeN3tocH35 68MDH8os26zQGHd/+XcYE+xbMpk1LuC0mo9NdANOX10n5Q8J6syYNMm6EgAAABp6VFh0anBlZzpj b2xvcnNwYWNlAAB42jMCAAAzADOJOCM1AAAAJnpUWHRqcGVnOnNhbXBsaW5nLWZhY3RvcgAAeNoz qjDSMawwBGEAEYMC6T2XL08AAAAASUVORK5CYII=
Xref csiph.com de.comp.lang.python:5216

Show key headers only | View raw


Hallo Liste,

ich will zur Laufzeit meines Programms ein dict erstellen mit einem 
Schlüssel und zwei werten. Der eine wert soll je nach anforderung
erhöht werden, also als Counter fungieren. Der zweite wert soll
erstmal nicht geändert werden wenn er erstellt wurde.

Ich würde nun den Counter mit der get() Methode erhöhen und da liegt
mein Problem begraben. 

Als kurzes und einfaches beispiel: 


#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# < code >
dict = {'key' : [2, 'hallo']}

print('was enthält das dict ?')
print(dict)

print('\n')
print('Gebe den ersten wert für key aus [0]')
print(dict['key'][0])

print('\n')
print('Gebe den zweiten wert für key aus [1]')
print(dict['key'][1])

print('\n')
print('Erhöhe den ersten wert für key[0] um 1')
dict['key'][0] += 1
print('Gebe den ersten wert für key[0] nach der erhöhung aus')
print(dict['key'][0])

print('\n')
print('Erhöhe den wert nochmals um 1 mit get')

# hier beginnt das Problem mit get

#dict['key'][0] = dict.get('key'[0], dict['key'][0]) + 1 # (1)
dict['key'][0] = dict.get('key'[0]) + 1 # (2)
print(dict['key'][0])

print('\n')
print('und so sieht das dict jetzt aus')
print(dict)

#< code end >

(1) geht weil get() den default Bereich benutzt. Diese sollte aber so
nicht sein.

(2) führt zu einem TypeError: unsupported operand type(s) for +:
'NoneType' and 'int'


ist diese Art mit get() umzugehen falsch oder nicht möglich wenn zwei
werte für einen key da sind? Die alternative die ich fand ist die
Methode has_key(), diese liefert mir jedoch den fehler das dict
has_key() nicht kennt. Gehörte wohl zu Python 2.7

Gruß
Manfred

-- 
Letzte Worte von U. Barschel:
  "Ich gebe mein Ehrenwort."

Back to de.comp.lang.python | Previous | NextNext in thread | Find similar


Thread

Ein Problem mit Dictionarie, oder das Schlüssel werte problem Manfred Gil <manfred-gil@t-online.de> - 2018-08-28 12:52 +0200
  Re: Ein Problem mit Dictionarie, oder das Schlüssel werte problem Manfred Gil <manfred-gil@t-online.de> - 2018-08-28 16:46 +0200
    Re: [Python-de]  Ein Problem mit Dictionarie, oder das Schlüssel werte problem Achim Domma <domma@procoders.net> - 2018-08-28 17:02 +0200
  Re: Ein Problem mit Dictionarie, oder das Schlüssel werte problem Manfred Gil <manfred-gil@t-online.de> - 2018-08-28 17:24 +0200

csiph-web