我在列表中有打牌的顺序。有 4 名玩家,因此列表中的每四个元素代表一个技巧。我必须一起处理 4 张牌才能找到技巧赢家。我需要一次将列表拆分为四个元素。我目前正在做以下事情:
cardSequnce = [
'D7', 'D8', 'DT', 'DA',
'H2', 'H7', 'HK', 'H5',
'H3', 'HT', 'HA', 'HQ',
'H8', 'D2', 'H4', 'HJ',
'D6', 'D3'
]
four_card = []
for index, card in enumerate(cardSequnce):
if(index % 4 == 0):
# process four_card
four_card = []
four_card.append(card)
我认为我可以使用 python 的强大功能做得更好。我可以循环访问4张卡吗?谁能帮助我使我的代码更符合 Pythonic?
最佳答案
如果你想从一个列表中创建长度为 4 的列表,可以这样做:
[cardSequence[i:i + 4] for i in range(0, len(cardSequence), 4)]
关于python进程批量列出元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45105622/