0
How do you make randint select 25 entries
Im trying to make a bingo card generator, I have it programmed to print random values up to 75 with their letter, but I want it to select 25 unique values and sort them in a 5×5 matrix
6 Respuestas
+ 2
Not sure why you want to cast the int into str.
But here I tried to do what your code suggests – associate 5 int as str to each of the letter depending on their values.
https://code.sololearn.com/cmKR44XB82b5/?ref=app
+ 5
Using random.sample() inbuilt method of the random module which takes the sequence and number of selections as arguments and returns a particular length list of items chosen from the sequence i.e. list, tuple, string or set. It is used for random selection from a list of items without any replacement. 
https://code.sololearn.com/cocmZpsj17DO/?ref=app
+ 3
Like this it can be done, add the values to a set until you have 25 entries:
from random import randint
s = set()
x = 0
while x < 25:
    y = randint(1,75)
    s.add(y)
    x = len(s)
l = list(s)
print (l)
+ 3
Tyler Page ,
When you want to divide numer ranges on letters then this can be done without if statements only with one set for each letter and randint of this range.
+ 1
This is what I have so far, still struggling to make it print the full list of 25, this is my first week of learning so I really appreciate the help 
(edit, just fixed it the indentation on print(l) was off)
Now to arrange them into 5 rows of 5
from random import randint
s = set()
i = 0
while i < 25:
 x = randint(1,75)
 s.add(x)
 l = list(s)
 if x<=15:
  l=["B"+str(x)]
 elif x<=30:
  l=["I"+str(x)]
 elif x<=45:
  l=["N"+str(x)]
 elif x<=60:
  l=["G"+str(x)]
 else:
  l=["O"+str(x)]
 i+=1
 print (l)
+ 1
Oh wow that helps immensely thank you, my original intention putting the int in str was to prevent a concatenation error






