Я не могу понять, как генерировать новое случайное значение каждый раз, когда вызывается random.choice, и почему эта фунPython

Программы на Python
Ответить
Anonymous
 Я не могу понять, как генерировать новое случайное значение каждый раз, когда вызывается random.choice, и почему эта фун

Сообщение Anonymous »

Код: Выделить всё

import random

# The card pool
cards = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10, 10]
# I created a list for the players cards bc that was the cleanest solution
players_cards = []
card_value = random.choice(cards)
sum = 0

def add(n1, n2):
totals = n1 + n2
return  totals

# I thought a function with a for loop in it to collect the players sum total of cards     was the cleanest solution
def player_total():
for i in players_cards:
sum += i

dictionary = {
'total': player_total
}

should_continue = True
players_cards.append(card_value)
adding_players_total = dictionary['total']

# This is the while loop needed for the player to 'HIT' so to speak before passing the     computer
while should_continue == True:
players_cards.append(card_value)
print(f"Your cards are {players_cards}, current score: {adding_players_total}")
print(f"The computer's first card is: {card_value}")
players_choices = input("Type 'y' for another card, or 'n' to pass: ").lower()
if players_choices == 'y':
should_continue == True
else:
break
Этот проект все еще находится в стадии разработки. Я на 11-м дне 100-дневного учебного курса Анджелы Ю по программированию. Я работаю над созданием игры в блэкджек. По моим оценкам, я закончил примерно на 35%.
Первая проблема, с которой я борюсь, и я просто не понимаю, как решить - это ГПСЧ. Насколько я понимаю, PRNG основан на системном времени, но если нужно вызвать random.choice несколько раз, например, в таком цикле, как в этом случае, он вернет одно и то же значение, что и делает. Я понятия не имею, как это решить. Я читал что-то о rand.seed, но это противоречит тому, чего я хочу. Это гарантирует, что PRNG будет генерировать одно и то же значение каждый раз.
Вторая проблема заключается в этой строке: {adding_players_total}"), расположенной в цикле while. Кажется, я не могу получить Я хотел создать цикл For, который будет перебирать список или «карты» игроков в руке. Я думал, что это будет чистое и элегантное решение для подсчета общей стоимости игральных карт, которые играют. Однако я не мог понять, как его правильно вызвать в программе, поэтому начал отчаиваться и пробовать такие вещи, как словарь, и теперь я действительно заблудился.

Подробнее здесь: https://stackoverflow.com/questions/791 ... m-choice-i
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»