我正在写一个基本的uno型卡片游戏,并希望能够(同时为玩家制作7张卡片)检查该值是否已经在玩家套牌中(我随机使用)。我得到了一个难以置信的字典错误,其他一些问题是关于同样的错误,但在代码的不同部分。无论如何,这是我的代码。难以置信的类型“字典”
def CardGame():
nm=8
clist=["Red","Blue","Green","Yellow"]
nlist=[]
for i in range(0,10):
nlist.append(i)
pd={}
deck={"Red":0,"Red":1,"Red":2,"Red":3,"Red":4,"Red":5,"Red":6,"Red":7,"Red":8,"Red":9,"Blue":0,"Blue":1,"Blue":2,"Blue":3,"Blue":4,"Blue":5,"Blue":6,"Blue":7,"Blue":8,"Blue":9,"Green":0,"Green":1,"Green":2,"Green":3,"Green":4,"Green":5,"Green":6,"Green":7,"Green":8,"Green":9,"Yellow":0,"Yellow":1,"Yellow":2,"Yellow":3,"Yellow":4,"Yellow":5,"Yellow":6,"Yellow":7,"Yellow":8,"Yellow":9}
for i in range(1,nm):
c=random.choice(clist)
d=random.choice(nlist)
if ({c:d}) in deck:
pd.update({c:d})
del deck[c:d]
else:
nm=nm+1
print("%s %s"%(c,d))
与您的错误并不完全相关,但在创建它后立即尝试“打印(deck)”,您可能会惊讶地看到它有多少条目。 – Kevin
呵呵,我看到最后一个条目是如何超越其他条目的;有没有办法来解决这个问题? –
你为什么用随机来检查一个值是否在卡组里?似乎你应该循环所有组合。 – Julien