Python 无法比较none类型和int类型

Python 无法比较none类型和int类型,python,Python,当我尝试执行函数CalcPoints时,我得到一条错误消息,说none和int不能比较。由于我在第一个函数中返回了OldPoints,我不确定从何处获取none-type对象 def GetPoints(CardNum1): if CardNum1 == "1": OldPoints = 3000 return OldPoints def CalcPoints(CardNum, Total): if Total > 10

当我尝试执行函数CalcPoints时,我得到一条错误消息,说none和int不能比较。由于我在第一个函数中返回了OldPoints,我不确定从何处获取none-type对象

def GetPoints(CardNum1):
    if CardNum1 == "1":
        OldPoints = 3000
        return OldPoints

def CalcPoints(CardNum, Total):
    if Total > 100:
        OldPoints = GetPoints(CardNum)
        if OldPoints > 2000:
            NewPoints = Total * 1.2
        else: 
            NewPoints = Total * 1.1
    else:
        NewPoints = 0
    return NewPoints

默认情况下,python函数返回None,因此,返回int值以进行比较

首先,函数中缺少一些缩进

如果CarNum1与“1”不同,则GetPoints()将不返回任何内容(无)。
使用默认返回值(如0或其他值)将else添加到此if语句。

如果
CardNum1
看起来不是
“1”
GetPoints
隐式返回
None
GetPoints中没有其他值,那么如果第一个条件不满足,它将返回None,放入一些else语句。如果不清楚,请告诉我,我会将其作为解决方案
def GetPoints(CardNum1):
    OldPoints = 0
    if CardNum1 == "1":
        OldPoints = 3000
    return OldPointt