Je ajoute un dictionnaire dans la liste, mais après addition, tout le dictionnaire a les mêmes valeurs. Qu'est-ce qui ne va pas dans le code ci-dessous dans final_data Il y a deux paires de dictionnaire mais 2018 n'est pas visible. Les deux dictionnaire ont les valeurs de 2019. p> C'est ce que je veux réellement dans mon code p> Je ne suis pas capable d'obtenir le terrain_data que les Qs requis . p> p>
4 Réponses :
C'est la fonctionnalité des dictionnaires, si vous mettez à jour sur la même clé, la valeur précédente sera écrasée. Dans votre cas lorsque vous réaffectant le dictionnaire, il en va de même dans toutes les autres références. Si vous souhaitez ajouter des dictionnaires différents dans une liste, vous pouvez quelque chose comme ci-dessous:
final_data=[]
final_data.append({
"brand": "Ford",
"model": "Mustang",
"year": 2018
})
final_data.append({
"brand": "Ford",
"model": "Mustang",
"year": 2019
})
Vous ne pouvez pas avoir deux mêmes clés dans un dictionnaire. Essayez quelque chose comme:
Je comprends que vous essayez de dire que les clés sont uniques dans une dicte, mais cela ne le rend pas semblable à un ensemble.
Eh bien, ce que je voulais dire, c'est qu'ils ne vous laissent pas avoir la même clé pendant plus d'une fois. C'est une similitude entre eux.
Les ensembles ont uniquement des valeurs, aucune clé. Comme je l'ai dit, je comprends cela et je suis sûr que vous le faites aussi, mais quelqu'un qui ne sait pas la différence aura la mauvaise idée. Un dict a deux parties - une clé et une valeur. Les clés sont uniques, les valeurs ne doivent pas nécessairement être. Dans un ensemble, il n'y a que des valeurs. L'ensemble maintient que les valeurs qu'il a sont uniques.
Vous manchonnez le même dict. Essayez à la place:
Toutes les autres réponses se concentrent uniquement sur les "dicts seulement ont des clés uniques", au lieu de la question non évidente mais réelle de la mise à jour du même dict. +1
Ceci est juste un exemple de ce que j'essaie d'atteindre. Je reçois des données de la base de données dans un query. Je souhaite créer une structure de données qui me donne une sortie dans les modèles suivants Data = {"Field_Name":
@Akash ok, et où est le problème?
Je suis capable d'obtenir le nom de Field_Name et Field_Type mais pas le champ de champ dans une seule boucle. Voici le code pour Elem dans QS: Pour V in Elem: final_data.append ({"Field_Name": v, "field_type": membre._meta.get_field (v) .get_internal_type ()}) qs est le jeu de requêtes. Comment pourrais-je ajouter Field_Value ??
Pourriez-vous modifier s'il vous plaît votre question initiale avec le code suivant et le problème? Je serais heureux de vous aider, mais il est vraiment difficile de comprendre comme ça ...
Si vous souhaitez utiliser les données dans le dictionnaire, vous pouvez utiliser le suivant Approch:
[['Ford', 'Mustang', 2018], ['Ford', 'Mustang', 2019]]
Je demande juste à vous comprendre des connaissances -> Savez-vous quelles sont les références en général
@ashish Singh C'est: accéder à la valeur d'origine, c'est-à-dire où il est stocké.
Oui, c'est ainsi que vous pouvez le comprendre