Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
建筑a";“甲板”;用python_Python - Fatal编程技术网

建筑a";“甲板”;用python

建筑a";“甲板”;用python,python,Python,我刚刚开始学习编程,现在正试图编写一个21点程序。我遇到的一个问题是我如何表现一副牌,以下是我是如何做到的(西装对我来说无关紧要): 问题是当脸牌被“发牌”时,当我希望它们显示为J、Q、K或a时,它们会显示10(11代表a…) 以下是交易功能: def deal(competitor, x): for i in range (0,x): card = shoe[0] dealt.append(card) competitor.append

我刚刚开始学习编程,现在正试图编写一个21点程序。我遇到的一个问题是我如何表现一副牌,以下是我是如何做到的(西装对我来说无关紧要):

问题是当脸牌被“发牌”时,当我希望它们显示为J、Q、K或a时,它们会显示10(11代表a…)

以下是交易功能:

def deal(competitor, x):
    for i in range (0,x):
        card = shoe[0] 
        dealt.append(card)
        competitor.append(card)
        shoe.remove(card)

有任何修复吗?

首先,进行这种映射的最简单方法是使用字典。第二,你的
牌组
现在的样子会遇到问题。您可以使用以下内容表示牌组并查找面卡:

face_map = {'A':11, 'J':10, 'Q':10, 'K':10}
deck = list('A23456789JQK'*4)
有了这个新的
卡片组
人脸映射
,您可以使用
人脸映射查找任何给定卡片的值。get(card)或int(card)
,这将返回任何人脸卡的检索值,或非人脸卡的整数值。下面是一个演示:

>>> print(*(face_map.get(card) or int(card) for card in 'A23456789JQK'))
11 2 3 4 5 6 7 8 9 10 10 10

首先,进行这种映射的最简单方法是使用字典。第二,你的
牌组
现在的样子会遇到问题。您可以使用以下内容表示牌组并查找面卡:

face_map = {'A':11, 'J':10, 'Q':10, 'K':10}
deck = list('A23456789JQK'*4)
有了这个新的
卡片组
人脸映射
,您可以使用
人脸映射查找任何给定卡片的值。get(card)或int(card)
,这将返回任何人脸卡的检索值,或非人脸卡的整数值。下面是一个演示:

>>> print(*(face_map.get(card) or int(card) for card in 'A23456789JQK'))
11 2 3 4 5 6 7 8 9 10 10 10

在列表中插入
A='A'
,而不是
A=11
。您可以使用将键(例如字符串)与值(例如int)关联的字典:
deck={'A':10,'2':2,…}
。在列表中插入
A='A'
,而不是
A=11
。您可以使用关联键(例如字符串)的字典对于值(例如int):
deck={'a':10,'2':2,…}