热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

pyton纸牌游戏中的功能问题

我正在用python构建纸牌游戏(与Dobbel类似,如果您知道的话)。游戏在纸牌组中

我正在用python构建纸牌游戏(与Dobbel类似,如果您知道的话)。游戏在纸牌组中进行,其中每张纸牌上都有多个符号。有效的卡片组是指所有卡片具有相同数量的符号,而每对卡片恰好共享一个符号。
我尝试构建一个功能来检查给定的卡片组是否有效。
这是我的代码:

def is_valid(deck):
new_deck = [deck[0]]
card_counter = 1
while card_counter for i in new_deck:
if len(i) == len(deck[card_counter]) and len(set(deck[card_counter]).intersection(set(i))) == 1:
new_deck.append(deck[card_counter])
card_counter += 1
else:
return False
return True

如您所见,该函数设置了一个新卡组,其中第一张卡在原始卡组中,并且每个循环(使用上行计数器)检查原始卡组中的另一张卡是否符合以下规则:有效的dack,如果是这样,它将添加到新的deck。

我尝试使用该卡片组来运行该功能:

deck = [["dolphin","bomb","spider"],["eye","fire"],["bomb","lock","tree"],["spider","fire","lock"]]
is_valid(deck)

但我不断收到该错误:

if len(i) == len(deck[card_counter]) and len(set(deck[card_counter]).intersection(set(i))) == 1:
IndexError: list index out of range

你们中的任何人都知道可能是什么问题吗?





推荐阅读
author-avatar
百变精灵545
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有