Как сопоставить случайное число с номером из списка - PullRequest
2 голосов
/ 01 апреля 2019

Я использую список для отслеживания чисел и хочу сопоставить индекс списков со случайным числом, чтобы я мог вычесть 1 из значения этого индекса.

import random
race_length = int(input("Choose the Length You Would Like You Race To Be 
(Between 5 and 15)"))
dice = ["1", "2", "3", "4", "5", "6" ]
cars=[
    ["1", race_length],
    ["2", race_length],
    ["3", race_length],
    ["4", race_length],
    ["5", race_length],
    ["6", race_length],
]
while race_length >0:    
    print("Press Enter to Roll the Dice")
    input()
    chosen = int(random.choice(dice))
    print(int(chosen))

Что бы я сделалтак что я могу сопоставить выбранное совпадение с числами в моем списке

Ответы [ 2 ]

0 голосов
/ 01 апреля 2019

... хочу сопоставить индекс списков со случайным числом, чтобы я мог вычесть 1 из значения этого индекса.

Вам не нужно добавлять индексы вместес каждым элементом в cars.Создайте обычный список:

cars = [race_length] * len(dice)

, индексируйте и вычтите как:

cars[chosen-1] -= 1

Код :

import random

race_length = int(input("Choose the Length You Would Like You Race To Be (Between 5 and 15)"))
dice = ["1", "2", "3", "4", "5", "6" ]
cars = [race_length] * len(dice)
while race_length >0:    
    print("Press Enter to Roll the Dice")
    input()
    chosen = int(random.choice(dice))
    print(chosen)
    cars[chosen-1] -= 1
    print(cars)

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

0 голосов
/ 01 апреля 2019

Нет необходимости совпадать со списком, просто выберите из списка

import random
race_length = int(input("Choose the Length You Would Like You Race To Be (Between 5 and 15)"))
cars=[
    ["1", race_length],
    ["2", race_length],
    ["3", race_length],
    ["4", race_length],
    ["5", race_length],
    ["6", race_length],
]
while race_length >0:    
    print("Press Enter to Roll the Dice")
    input()
    chosen = random.choice(cars)
    print(chosen[0])
    chosen[1]-=1

Также вы приведете к int способ многим.так что print (int ("1")) приведёт "1" к одному, а затем, в свою очередь, снова преобразуется в "1".

РЕДАКТИРОВАТЬ: вычесть один из выбранных можно просто сделать, вычтя одиниз выбранного поля по индексу 1.

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