Combinaisons et calcul
goodsayan
-
khrug -
khrug -
Bonjour,
Je débute complètement en python. Je cherche à générer des combinaisons d'objets et de calculer des sommes les caractérisants.
Un peu confus donc je donne vite un exemple:
J'ai 3 objets 'A','B','C' que je souhaite combiner entre eux par 2 par exemple.
Afin d'obtenir ce résultat
[['A', 'B'], ['A', 'C'], ['B', 'C']]
Maintenant les objets ont ses caractéristiques
A= [ST=5,SD=7,SA=2]
B= [ST=1,SD=3,SA=3]
C= [ST=2,SD=2,SA=4]
Je souhaiterais qu'en plus d'obtenir ['A', 'B'], j'ai la somme de caractéristiques de 'A' et 'B' tel que [ST=6,SD=10,SA=5] et cela pour chacune des combinaisons possibles.
Le résultat attendu serait:
La combinaison A, B donne ST=6,SD=10,SA=5
La combinaison A, C donne ST=7,SD=9,SA=6
La combinaison B, C donne ST=3,SD=5,SA=7
Merci d'avance
Je débute complètement en python. Je cherche à générer des combinaisons d'objets et de calculer des sommes les caractérisants.
Un peu confus donc je donne vite un exemple:
J'ai 3 objets 'A','B','C' que je souhaite combiner entre eux par 2 par exemple.
Afin d'obtenir ce résultat
[['A', 'B'], ['A', 'C'], ['B', 'C']]
Maintenant les objets ont ses caractéristiques
A= [ST=5,SD=7,SA=2]
B= [ST=1,SD=3,SA=3]
C= [ST=2,SD=2,SA=4]
Je souhaiterais qu'en plus d'obtenir ['A', 'B'], j'ai la somme de caractéristiques de 'A' et 'B' tel que [ST=6,SD=10,SA=5] et cela pour chacune des combinaisons possibles.
Le résultat attendu serait:
La combinaison A, B donne ST=6,SD=10,SA=5
La combinaison A, C donne ST=7,SD=9,SA=6
La combinaison B, C donne ST=3,SD=5,SA=7
Merci d'avance
Configuration: Windows / Firefox 69.0
A voir également:
- Combinaisons et calcul
- Calcul km marche à pied gratuit - Télécharger - Sport
- Calcul alimentation pc - Guide
- Clémence souhaite faire calculer automatiquement les prix de 30 produits dans trois devises. elle a déjà saisi une formule de calcul pour le tarif du premier produit dans la première devise. corrigez sa formule afin que recopiée vers le bas puis vers la droite, elle remplisse correctement tout le tableau. - Forum Excel
- Calcul charpente bois gratuit - Télécharger - Architecture & Déco
- Calcul de la moyenne - Guide
1 réponse
Bonjour.
Ce n'est pas très compliqué.
D'abord générer les combinaisons, puis à l'aide des identifiants d'objets, récupérer leur caratéristiques pour en faire la somme.
Ce qui pourrait se traduire par.
Ce n'est pas très compliqué.
D'abord générer les combinaisons, puis à l'aide des identifiants d'objets, récupérer leur caratéristiques pour en faire la somme.
Ce qui pourrait se traduire par.
import itertools
objets = {
'A':{'ST':5,'SD':7, 'SA':2},
'B':{'ST':1, 'SD':3, 'SA':3},
'C':{'ST':2, 'SD':2, 'SA':4},
}
combinaisons = itertools.combinations(objets, 2)
resultats = {}
for comb in combinaisons:
attrs = dict.fromkeys(objets['A'], 0)
for n in comb:
for k, v in objets[n].items():
attrs[k] += v
resultats[comb] = attrs
print(resultats)