python批量处理列表元素

avn*_*ara 4 python python-3.x

我有一个列表中的扑克牌序列。有 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)
Run Code Online (Sandbox Code Playgroud)

我认为使用python的力量我可以做得比这更好。我可以同时访问 4 张卡吗?任何人都可以帮助我使我的代码更加 Pythonic 吗?

Han*_*nnu 9

如果您想从列表中创建长度为 4 的列表,可以这样做:

[cardSequence[i:i + 4] for i in range(0, len(cardSequence), 4)]
Run Code Online (Sandbox Code Playgroud)