微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何像 C# 中的 CompareTo() 一样比较 python 中的整数?

如何解决如何像 C# 中的 CompareTo() 一样比较 python 中的整数?

据我所知,在.NET Framework中有一个方法Int32.Compareto(),如果数字相等,则返回0,如果括号中的数字更大,则返回-1,否则返回1。是否存在这方法,在python中具有相同的返回值,还是我必须自己写一个

解决方法

也许在一些神秘的第三方库中,但没有,在“vanilla”Python 3.x 中没有方法可以做到这一点,尽管实现类似功能的代码应该像这样简单:

def compare_to(val1: int,val2: int) -> int:
    if val1 > val2:
        return 1
    elif val1 < val2:
        return -1
    elif val1 == val2:
        return 0

或者,为了更接近您使用 int 的自定义子类所描述的内容:

class Int32(int):
    def compare_to(value: int) -> int:
        if self > value:
            return 1
        elif self < value:
            return -1
        elif self == value:
            return 0

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。