Ich bin auf dieses Problem ein paar Mal gestoßen und kann nicht scheinen, eine einfache Lösung herauszufinden. Sagen, ich habe einen Stringkonvertiere string zu dict mit list Verständnis in Python
string = "a=0 b=1 c=3"
I, das in ein Wörterbuch mit einem konvertierenden, b und c als Schlüssel und 0, 1, 3 und ihre jeweiligen Werte zu sein (in int umgewandelt). Natürlich kann ich dies tun:
list = string.split()
dic = {}
for entry in list:
key, val = entry.split('=')
dic[key] = int(val)
Aber ich weiß nicht wirklich wie die for-Schleife Es scheint so einfach, dass Sie sollten in der Lage, es zu irgendeiner Art von Liste Verständnis Ausdruck zu konvertieren. Und das funktioniert für etwas einfachere Fälle, wo die val
eine Zeichenfolge sein kann.
Allerdings muss ich Val zu einem Int on the fly konvertieren und etwas wie das ist syntaktisch falsch.
dic = dict([[entry[0], int(entry[1])] for entry.split('=') in list])
Also meine Frage ist: Gibt es eine Möglichkeit, die for-Schleife Verständnis mit Liste zu beseitigen? Wenn nicht, gibt es eine eingebaute Python-Methode, die das für mich tun wird?
Hinweis: Verwenden Sie keine Funktionen als Variablennamen gebaut ('string',' list', etc.) –