作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个二十一点模拟,以便我可以测试各种策略并无限期地模拟它们。我遇到的最大的问题是如何获得一张王牌。理想情况下,如果你拿到了一张 A,它会查看你的分数,并相应地给你 1 或 11,但是如果你拿到的是五 (5)、Ace(11),然后是六 (6),我无法避免当你应该有 12 的时候却让你半身像。
class Person:
wins = 0
def __init__(self, call):
self.call = call
self.hand = []
def deal(self, cards_dealt):
cards_in_deck = len(deck)
for card in range(0, cards_dealt):
card_position = (random.randint(0, cards_in_deck) - 1)
self.hand.append(deck[card_position])
deck.pop(card_position)
cards_in_deck -= 1
def total(self):
my_total = 0
for x in range(0, len(self.hand)):
if self.hand[x][0] > 10:
my_total += 10
if self.hand[x][0] == 1:
if self.total < 11:
my_total += 11
else:
my_total += 1
else:
my_total += self.hand[x][0]
return my_total
numbers_in_each_suit = 13
suits = ['Spades', 'Hearts', 'Diamonds', 'Clubs']
deck = []
for number in range(0, numbers_in_each_suit):
for suit in suits:
deck.append([(number + 1), suit])
cpu = Person(10)
cpu.deal(2)
cpu.total()
最佳答案
只需使用 1 作为创建 A 的数字,为每张 A 添加 11 并计算每张 A,然后如果您爆牌则减去 10,直到您没有爆牌或直到您用完可减少的 A 为止。
关于python - 如何为王牌编写二十一点计分程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58387080/
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,
在我看来,GC 不会覆盖低于当前分数的分数。这是一个很大的问题,因为我应该如何覆盖存储射击精度(例如 56%、66% 等)等参数的排行榜?我也找不到任何方法来重置分数。 最佳答案 这取决于您如何在 i
我是一名优秀的程序员,十分优秀!