'How can i divide list?
from random import *
lotto_num = []
for j in range(7) :
for i in range(1, 8) :
number = randint(1, 46)
while number in lotto_num:
number = randint(1, 46)
lotto_num.append(number)
lotto_num.sort()
print("{0}".format(lotto_num))
This code makes lottery number so, I want to get lists like
[1,2,3,4,5,6,7]
[2,3,4,5,6,7,8]
[3,4,5,6,7,8,9]
...
but my code only has shown like this
[1,2,3,4,5,6,7,8,9,10.......] ## <- just add number without make new lists!
how i can fix this?
Solution 1:[1]
First of all, it is recommended to import specific functions instead of whole package. Since we need only randint we can import:
from random import randint
Than your problem can be re-worded as generating n lists of given length l, filled by random numbers from range 1-46.
from random import randint
# number of lotto
n = 5
# length of each lotto
l = 7
# result
lotto_numbers = []
# I am using _ since we do not need that value
for _ in range(n):
lotto = []
for _ in range(l):
number = randint(1, 46)
while number in lotto:
number = randint(1, 46)
lotto.append(number)
lotto.sort()
lotto_numbers.append(lotto)
print(lotto_numbers)
Later you can print generated lotto (or save them into file), that is better approach than printing each lotto right after generation.
...
for lotto in lotto_numbers:
print(lotto)
Probably the cleanest Pythonic solution which uses random.sample to simulate n times drawing random non-repeated numbers from range 1-46 follows:
from random import sample
# number of lotto
n = 5
# length of each lotto
l = 7
lotto_numbers = [sorted(sample(range(1, 46), l)) for _ in range(n)]
print(lotto_numbers)
Solution 2:[2]
from random import *
array=[]
for j in range(7) :
lotto_num = []
for i in range(1, 8) :
number = randint(1, 46)
while number in lotto_num:
number = randint(1, 46)
lotto_num.append(number)
lotto_num.sort()
array.append(lotto_num)
print("{0}".format(lotto_num))
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | |
| Solution 2 | Mustafa Fatih ?en |
