I`m trying to create a game "STOP" where it sort or draw a random number that it return a letter. The alphabetic has 25 letters, each number is a letter.
I want that each letter is printed it not repeat anymore, and the random choose a different letter.
Here is my code
import random
def let (ordem):
if ordem == 0:
return 'A'
elif ordem == 1:
return 'B'
elif ordem == 2:
return 'C'
elif ordem == 3:
return 'D'
elif ordem == 4:
return 'E'
elif ordem == 5:
return 'F'
elif ordem == 6:
return 'G'
elif ordem == 7:
return 'H'
elif ordem == 8:
return 'I'
elif ordem == 9:
return 'J'
elif ordem == 10:
return 'K'
elif ordem == 11:
return 'L'
elif ordem == 12:
return 'M'
elif ordem == 13:
return 'N'
elif ordem == 14:
return 'O'
elif ordem == 15:
return 'P'
elif ordem == 16:
return 'Q'
elif ordem == 17:
return 'R'
elif ordem == 18:
return 'S'
elif ordem == 19:
return 'T'
elif ordem == 20:
return 'U'
elif ordem == 21:
return 'V'
elif ordem == 22:
return 'W'
elif ordem == 23:
return 'X'
elif ordem == 24:
return 'Y'
elif ordem == 25:
return 'Z'
for l in range(1):
ordem = random.randrange(25)
abc = let(ordem)
print(f'A letra sorteada foi *{abc}*')
You have two basic approaches for that:
The second approach is easier to do, especially by pre-shuffling the list:
with each pop, the letters list shrinks, so you cannot get the same letter twice.