Test automatico con chiavi casuali da dict con valori aggiunti pari a un certo numero

-2

Ho una lista (23 voci) di scelte e l'ho trasformato in un dizionario per avere un valore per ogni scelta.

Devo selezionare 3 scelte casuali da quel dizionario ogni volta che eseguo il test e la loro somma di valore deve essere 23.

Fino ad ora ho fatto questo:

list = ['somthing', 'something else'......'something else else']
nums = [1,2,3...23]
dic = dict(zip(lista, nums))

for x, y, z in dic:
    if dic.values(x) + dic.values(y) + dic.values(z) == 23:
        print(x, y, z)

e capisco che ci sono troppi valori da decomprimere.

Qualche idea su come posso ottenere questo risultato?

    
posta Dan Stefan Craciun 20.06.2018 - 08:26
fonte

1 risposta

0

Ok, quindi ho avuto un po 'di aiuto e ho dovuto usare una dichiarazione while. Inserendo il codice qui sotto, forse qualcuno lo troverà utile.

while True:

key1 = random.choice(list(dic.keys()))
key2 = random.choice(list(dic.keys()))
key3 = random.choice(list(dic.keys()))

listSum = dic[key1] + dic[key2] + dic[key3]
if listSum == 23:
    print(key1, key2, key3)
    break
    
risposta data 20.06.2018 - 09:18
fonte

Leggi altre domande sui tag