You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写Python for循环生成6副扑克牌的唯一命名变量

问题原因

你的代码逻辑错误出在循环嵌套结构:用于控制卡牌唯一序号的i循环内部嵌套了花色、点数的完整遍历逻辑,导致每个i值都会触发52次打印,自然会出现同一个card_i重复输出52次的问题。

修复后代码

# 预先定义花色列表,减少重复的if判断
colors = ["clubs", "diamond", "hearts", "spades"]
# 初始化卡牌序号计数器
card_index = 1
# 外层循环控制6副牌
for _ in range(6):
    # 遍历4种花色
    for color in colors:
        # 遍历13个点数
        for num in range(1, 14):
            print(f"card_{card_index} = tuple(color = {color}, num = {num})")
            card_index += 1

代码说明

  • 单副牌共4花色×13点数=52张,6副牌总计312张,计数器会从1自动递增到312,保证每张卡牌对应唯一变量名
  • 输出顺序完全符合预期:同花色的13个点数连续输出,点数遍历完成后自动切换下一个花色,单副牌输出完成后自动输出下一副牌的内容
  • 去掉了冗余的嵌套循环和if判断,执行效率更高

内容的提问来源于stack exchange,提问作者571Fanatic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 19:36:03