Ich habe ungefähr 10 Websites durchsucht, wie man ein Array mit Python in ein Wörterbuch konvertiert. Ich habe ein "Muster gefunden, das nicht im allgemeinen Einführungskommentar-Blog veröffentlicht ist", daher werde ich es als erweiterte Version vorstellen.
Wenn Sie suchen, indem Sie ein Array in ein Wörterbuch konvertieren, finden Sie viele Beispiele mit einem Schlüssel und einem Wert von 1: 1.
test002.py
key2=["name","age","kind"]
data2=["siva",4,"dog"]
print(dict(zip(key2,data2)))
Die Schlüssel und Werte befanden sich in separaten Arrays, aber ich konnte sie ordentlich in ein Wörterbuch konvertieren.
output
{'name': 'siva', 'age': 4, 'kind': 'dog'}
In der Realität können die folgenden komplexen Daten verarbeitet werden. Selbst wenn Sie das allgemeine Beispiel so anwenden, wie es ist, kann es nicht in das gewünschte Format konvertiert werden.
test001.py
key1=["name","age","kind"]
data1=[["garm",4,"dog"],["chapalu",3,"cat"],["echidna",10,"snake"],["phoenix",6,"bird"]]
print(dict(zip(key1,data1)))
Das ist ein Chaos. Die Daten sind unbrauchbar geworden.
output
{'name': ['garm', 4, 'dog'], 'age': ['chapalu', 3, 'cat'], 'kind': ['echidna', 10, 'snake']}
Verwenden wir daher die Einschlussnotation wie folgt.
test001.py
key1=["name","age","kind"]
data1=[["garm",4,"dog"],["chapalu",3,"cat"],["echidna",10,"snake"],["phoenix",6,"bird"]]
print([dict(zip(key1,item)) for item in data1])
Es ging gut.
output
[{'name': 'garm', 'age': 4, 'kind': 'dog'}, {'name': 'chapalu', 'age': 3, 'kind': 'cat'}, {'name': 'echidna', 'age': 10, 'kind': 'snake'}, {'name': 'phoenix', 'age': 6, 'kind': 'bird'}]
Wenn ich es mit der For-Anweisung umschreibe, sieht es so aus.
test001.py
key1=["name","age","kind"]
data1=[["garm",4,"dog"],["chapalu",3,"cat"],["echidna",10,"snake"],["phoenix",6,"bird"]]
mydata = []
for item in data1:
mydata.append(dict(zip(key1,item)))
print(mydata)
Das Ergebnis ist das gleiche.
output
[{'name': 'garm', 'age': 4, 'kind': 'dog'}, {'name': 'chapalu', 'age': 3, 'kind': 'cat'}, {'name': 'echidna', 'age': 10, 'kind': 'snake'}, {'name': 'phoenix', 'age': 6, 'kind': 'bird'}]
Excelsior!!
Recommended Posts