我正在创建一个二十一点游戏,并且我熟悉游戏规则。但我的难题在其他地方。 我能够随机将卡片附加到计算机和用户。但为了这个目的,我写了两次 for 循环。我只想编写一个函数,用于将两组不同卡随机分配给用户和计算机。为了更好地理解,我添加了下面的代码
import random
print("Welcome to Blackjack!")
cards = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10, 10]
def deal_cards():
return random.choice(cards)
user_cards = []
for _ in range(2):
card = random.choice(cards)
if card in user_cards:
continue
else:
user_cards.append(card)
computer_cards = []
for _ in range(2):
card = random.choice(cards)
if card in computer_cards:
continue
else:
computer_cards.append(card)
print(user_cards)
print(computer_cards)
最佳答案
你可以尝试这样的事情
def deal_hand():
hand = []
for _ in range(2):
card = random.choice(cards)
if card in hand:
continue
else:
hand.append(card)
return hand
然后
user_hand = deal_hand()
dealer_hand = deal_hand()
关于python - 如何将二十一点游戏的两个重复 for 循环转换为单个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69782537/