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

Python 纸牌蟒蛇 我有一个代码把卡片从甲板上移到基础桩上。我已经导入了必要的细节等。我的问题是,它太长了。有没有办法把它缩短?怎么用?谢谢:),python,Python,考虑将Diamond、Heart、Clubs和Spade合并到一个字典中,关键是suit。代码长不一定是个问题。请更具体地说明你担心什么。同样,考虑在下面发布这些问题 def dtof(): suit = raw_input("enter suit: ") v = trash.pop() if suit == "D": if card.suitNumber[v.suit] == 1: if card.rankNumber[v.ran

考虑将Diamond、Heart、Clubs和Spade合并到一个字典中,关键是suit。

代码长不一定是个问题。请更具体地说明你担心什么。同样,考虑在下面发布这些问题
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)