我的程序重载 + 运算符来计算 2 名学生的平均 GPA。 在我对add函数的定义中,我希望 return 语句返回平均值。然后我想使用 print(( 打印这个"返回值"。
但是,return 语句似乎也会将平均值与打印语句一起打印。
输出为:
8.0
8.0
我不明白为什么 return 语句打印值。不是应该返回值吗?
通过在线谷歌搜索这个问题,我发现返回应该打印值的唯一时间是使用交互式控制台时(我正在使用pycharm(。
打印两次
打印一次
class student():
def __init__(self, name, gpa):
self.name = name
self.gpa = gpa
def __add__(x, y):
return ((x.gpa + y.gpa)/2)
s1 = student("john", 9)
s2 = student("wick", 7)
avg = s1 + s2
print(s1 + s2)
当您向下滚动时,第一个屏幕截图中似乎有更多的源代码。检查那里是否存在打印...