格式:孤立品蟒

2024-05-19 02:26:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个代码把卡片从甲板上移到基础桩上。我已经输入了必要的细节等等。我的问题是,它太长了。有没有办法缩短它?怎样?谢谢:)

def dtof():
    suit = raw_input("enter suit: ")
    v = trash.pop()
    if suit == "D":
        if card.suitNumber[v.suit] == 1:
            if card.rankNumber[v.rank] == 0:
                Diamond.append(v)
            elif card.rankNumber[v.rank] == card.rankNumber[Diamond[-1].rank] + 1:
                Diamond.append(v)
            else:
                trash.append(v)
            return Diamond[-1]
        else:
            trash.append(v)
    elif suit == "H":
        if card.suitNumber[v.suit] == 2:
            if card.rankNumber[v.rank] == 0:
                Heart.append(v)
            elif card.rankNumber[v.rank] == card.rankNumber[Heart[-1].rank] + 1:
                Heart.append(v)
            else:
                trash.append(v)
            return Heart[-1]
        else:   
            trash.append(v)
    elif suit == "C":
        if card.suitNumber[v.suit] == 4:
            if card.rankNumber[v.rank] == 0:
                Clubs.append(v)
            elif card.rankNumber[v.rank] == card.rankNumber[Clubs[-1].rank] + 1:
                Clubs.append(v)
            else:
                trash.append(v)
            return Clubs[-1]
        else:
            trash.append(v)
    elif suit == "S":
        if card.suitNumber[v.suit] == 3:
            if card.rankNumber[v.rank] == 0:
                Spade.append(v)
            elif card.rankNumber[v.rank] == card.rankNumber[Spade[-1].rank] + 1:
                Spade.append(v)
            else:
                trash.append(v)
            return Spade[-1]
        else:
            trash.append(v)
    else:
        trash.append(v)

Tags: returnifcardelsespadesuitelifrank

热门问题