python进程批量列出元素

标签 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)

我认为我可以使用 python 的强大功能做得更好。我可以循环访问4张卡吗?谁能帮助我使我的代码更符合 Pythonic?

最佳答案

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

[cardSequence[i:i + 4] for i in range(0, len(cardSequence), 4)]

关于python进程批量列出元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45105622/

相关文章:

python - 将 gunicorn 与 asyncio 一起使用时,如何屈服于另一个请求?

python - 轮询 AWS SQS 队列并从队列中删除接收到的消息的最佳实践?

python - 将自定义(深度)复制逻辑添加到 python 类的正确方法

python - python 生成器中的代码何时停止执行?

python - 将 Pandas 中的昵称与名字相匹配

python - 在 Selenium 中控制 Firefox 选项卡

python - 在 Python 3.6.1 中使用带有 basemap 和轮廓的某些投影时出现 IndexError

python - 迭代生成键并计算单词数

python-3.x - 如何将 body 发送到 Falcon 中的 simulate_post

Python:如何创建嵌套容器的散列