Jan-28-2019, 08:11 PM
hi! i have a problem i can't understand, randint stops popping new randdom values even if the variables are in the loop:
anyone can explain to me how does this work because i just don't get it, thank you!
def pvp(): dicesonboard = [] dicesused = [] dicesonship = [] dicesremaining = [] socres = {} rounds = 0 print("if you want to quit type quit") while rounds < 3: dice1 = randint(1, 6) dice2 = randint(1, 6) dice3 = randint(1, 6) dice4 = randint(1, 6) dice5 = randint(1, 6) dice6 = randint(1, 6) userinput = input("to start the game type throw: ").lower() rounds += 1 if userinput == "quit": break if userinput == "throw": print("let the game begin") print("Round", rounds) dices = [dice1, dice2, dice3, dice4, dice5, dice6] print("Thrown Dices: ""Dice I: ", dice1, "Dice II: ", dice2, "Dice III: ", dice3, "Dice IV: ", dice4, "Dice V: ", dice5, "Dice VI: ", dice6) if 6 not in dicesonship: if 6 in dices: print("you have a ship now gather a captain and a crew") for i in dices: if i == 6: dicesonship.append(i) dicesused.append(randint(1, 6)) breakas you can see, i did put ranind inside of an append fund while looping but the value stays the same
Error:Round 1
Thrown Dices: Dice I: 6 Dice II: 6 Dice III: 6 Dice IV: 1 Dice V: 2 Dice VI: 6
you have a ship now gather a captain and a crew
[5] [6]
to start the game type throw: throw
let the game begin
Round 2
Thrown Dices: Dice I: 3 Dice II: 6 Dice III: 4 Dice IV: 5 Dice V: 1 Dice VI: 1
[5] [6]
to start the game type throw: throw
let the game begin
Round 3
Thrown Dices: Dice I: 5 Dice II: 1 Dice III: 6 Dice IV: 6 Dice V: 3 Dice VI: 4
[5] [6]
focus on the list with the int 5 (don't care about the other list), i did try to change randint to the variables (dice1,2 etc) but that dosent work..anyone can explain to me how does this work because i just don't get it, thank you!