J'ai besoin de multiplier les valeurs de chaque touche, puis d'ajouter toutes les valeurs ensemble pour imprimer un numéro unique. Je sais que cela probablement super simple mais je suis coincé
dans mon esprit, je l'aborderais avec quelque chose comme: p> mais quelque chose comme ça ne va pas travailler:) p>
7 Réponses :
Si vous auriez su, comment itérer via un dictionnaire, indexez un dictionnaire à l'aide d'une touche et comprendre un dictionnaire, ce serait un «pré> xxx pré>
même si votre implémentation de Python fait Non fournissez la compréhension du dictionnaire ( si vous ne faites pas; t veux compatible entre 2.x et 3.x, vous pouvez également utiliser iteriTems au lieu de
Articles p> Si vous souhaitez un seul total du résultat, vous pouvez transmettre les produits individuels à somme code> p>
Vous pouvez utiliser une compréhension dict si vous souhaitez que les individus: ou aller directement au total: p>
En supposant que stock code> a les mêmes clés que les prix code>. Peut-être stock.get (k, 1) code> serait plus approprié, mais je ne suis pas sûr ... de si vous êtes seulement intéressé par le chevauchement, sur python3, pour k in Prix.Keys () & Stock.Keys () Code> (Python2.7 C'est Keysview je pense)
Oui, dépend du cas d'utilisation. Je pensais peut-être stock.get (k, 0) code>, en supposant que le numéro par défaut a été égal à zéro, mais au moins de cette façon, vous obtenez un joli keerror code> et peut décider de là. : ^)
Oh, à droite. Obtenir (k, 0) Code> serait plus logique que d'utiliser 1. Après tout, vous ne pouvez pas facturer un article que vous n'avez pas en stock.
Merci, fonctionne parfaitement. J'ai bien été bien avec un dictionnaire mais travaillant entre deux était difficile. Essayait de créer une fonction et de jouer évidemment là-haut. Merci beaucoup pour votre aide!
Je suppose que vous êtes sur CoDeacademy? Si oui, faites cela: Contrairement à ce que les instructions ont indiqué que vous devriez ajouter toutes les valeurs ensemble avant de les multiplier et les ajouter au total. J'espère que cela aide. P> p>
total = 0
for key in prices:
print prices[key] * stock[key]
total += prices[key] * stock[key]
print total
Réponse correcte pour CoDeAcademy en fonction de la description de la tâche:
J'ai écrit le code suivant et cela a fonctionné. Pour les prix principaux:
print key print "price: %s" % + prices[key] print "stock: %s" % + stock[key]
Bienvenue à :) Il est toujours préférable d'ajouter une explication au code que vous postez comme une réponse, de sorte qu'elle aiderait les visiteurs à comprendre pourquoi c'est une bonne réponse.
réponse rapide et générale.
Si vous recherchez un moyen efficace et rapide de multiplier fort> les éléments (valeurs) de deux dictionnaires ensemble, utilisez compréhension dict forte >.
Assurez-vous que les deux dictionnaires ont les mêmes clés.
Vous pouvez utiliser cette doublure: p>
Duplicates: Stackoverflow.com/questions/ 29189978 / ... , Stackoverflow.com/questions/19547281/ ...