如何在Python中设置一个变量大于另一个变量?

iku*_*uro 2 python

我正在尝试用Python创建一个"摇滚,纸张,剪刀"游戏,我想将一个变量设置为大于另一个变量.

就像是:

paper > rock
scissors > paper
rock > scissors
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做..?

skn*_*nat 5

是的,丹尼尔说,超越__cmp__你可以实现这一点:

class Comparable(object):
    def __init__(self, below_class, above_class):
        self.above_class = above_class
        self.below_class = below_class

    def __cmp__(self, other):
        if isinstance(other, self.below_class):
            return 1
        if isinstance(other, self.above_class):
            return -1
        return 0

class Paper(Comparable):
    pass

class Rock(Comparable):
    pass

class Scissors(Comparable):
    pass

scissors = Scissors(Paper, Rock)
paper = Paper(Rock, Scissors)
rock = Rock(Scissors, Paper)

# True

print paper > rock
print scissors > paper
print rock > scissors

# False

print paper < rock
print scissors < paper
print rock < scissors
Run Code Online (Sandbox Code Playgroud)

有关其工作方式的文档,请访问:https://docs.python.org/2.6/reference/datamodel.html#object.CMP