Как вы делаете N количество списков с K числом целых чисел в Python? - PullRequest
0 голосов
/ 28 октября 2019

Я пытаюсь создать программу лотереи, в которой вы можете разыгрывать несколько «рядов». Мне удалось сделать так, чтобы вы могли выбрать один ряд чисел, и программа выбирает выигрышные номера и проверяет результаты.

Итак, вопрос в том, как игрок может выбрать несколько наборов чисел? Все числа должны быть уникальными в конкретном наборе, но разные наборы могут иметь дубликаты.

Например, все в порядке: [1,2,4,6,9], [1,2, 5,11,16]

Это не [1,1,2,3,3], [4,4,6,8,11]

1 Ответ

2 голосов
/ 28 октября 2019

Этого можно достичь с помощью функции random.sample().

import random

# Set the number of rows
number_of_rows = 3

# Set how many numbers needed for each row
count = 5

# Set the possible numbers for the lottery
numbers = [x for x in range(50)]

# Empty result array
result = []

# Take a sample of the numbers for each of the desired rows
for row in range(0, number_of_rows):
    result += [random.sample(numbers, count)]

# Print result
print(result)

Обратите внимание, что в этом примере возвращается желаемое количество строк и их номеров в виде массива массивов. Конечно, есть и другие способы достижения этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...