可以使用函数以更简单的方法完成,但由于我正在练习 OOP,所以我想尝试使用类来编写此问题的代码。
class Numbers:
def __init__(self):
self.__sum=0
def addNumber(self, number):
self.__sum += number
def currentSum(self):
return self.__sum
numbers = Numbers()
a = ['3 2', '1 2']
for n in a:
for i in n.split():
numbers.addNumber(int(i))
print(numbers.currentSum())
但是,产生的输出是这样的:
3
5
6
8
而不是
5
3
请您参考如下方法:
在第一个循环中创建类实例。并在第二个循环外打印。
class Numbers:
def __init__(self):
self.__sum=0
def addNumber(self, number):
self.__sum += number
def currentSum(self):
return self.__sum
a = ['3 2', '1 2']
for n in a:
numbers = Numbers()
for i in n.split():
numbers.addNumber(int(i))
print(numbers.currentSum())
