咋写Python扑克牌,不太懂

4、编写程序,生成一副扑克牌,有4个花色,每个花色有13张牌
【问题分析】:根据题目要求,需要使用2个字符串列表来存放13张牌和4个花
色,因为每个花色都要配13张牌,因此需要设计一个二重循环结构来完成。
【代码】:
ranks="2345678910JQKA"
suits="黑桃红桃方块梅花"
suit=""
28
rank=""
foriinrange(0,26,2):
forjinrange(0,8,2):



print(suit+rank,end="")

你发的代码中空格都被过虑掉了吧
按照for i in range(0,26,2):这样循环。你ranks字符串长度应该是26,应该是这样"2 3 4 5 6 7 8 9 10J Q K A "

ranks = "2 3 4 5 6 7 8 9 10J Q K A "
suits = "黑桃红桃方块梅花"
suit = ''
rank = ''
for i in range(0,26,2):
    for j in range(0, 8, 2):
        rank = ranks[i:i+2]
        suit = suits[j:j+2]
        print(suit+rank, end=" ")

img

如有帮助,望采纳!谢谢!

大概这种感觉?
有帮助望采纳~


ranks = "2345678910JQKA"
suits = "黑桃红桃方块梅花"
suit = ''
rank = ''
for i in range(0, 14):
    for j in range(0, 8, 2):
        suit = suits[j:j+2]
        if ranks[i] == '1':
            rank = ranks[i:i+2]
        elif ranks[i] == '0':
            i += 1
        else:
            rank = ranks[i]
        print(suit+rank, end=" ")

img

如果只能按给定形式的字符串来做的话,就这样写:

ranks = "2345678910JQKA"
suits = "黑桃红桃方块梅花"
suit = ''
rank = ''
for i in range(0,26,2):
    for j in range(0, 8, 2):
        suit = suits[j:j+2]
        rank=(list(ranks[:9])+['10']+list(ranks[11:14]))[i//2]
        print(suit+rank, end=" ")