-1

I need to write a class, Numbers, with methods addNumbers and currentSum, that prints the current sum. Eg.:

numbers = Numbers()
numbers.addNumber(3)
numbers.addNumber(2)
print numbers.currentSum()

should print 5

I have made a class:

class Numbers:
    def __init__(self, numbers):
    self.numbers=addNumbers
    return numbers.currentSum()
Numbers=Numbers()

A hint, anyone?

GWW
  • 43,129
  • 11
  • 115
  • 108
Linus Svendsson
  • 1,417
  • 6
  • 18
  • 21
  • If you're using Python 2.x, use `class X(object):` instead. `class X:` is an old style class.. [Here are the differences](http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes). – John Doe Dec 08 '11 at 16:56

3 Answers3

3
class Numbers:
    def __init__(self):
       self.__sum=0
    def addNumber(self, number):
       self.__sum += number
    def currentSum(self):
       return self.__sum
ILYA Khlopotov
  • 705
  • 3
  • 5
2

Hints:

  1. You need to implement the currentSum() method
  2. You also need to implement the addNumber() method
  3. addNumber() will need to keep track of numbers across method calls. Use a list.

More reading on methods: What is a "method" in Python?

Community
  • 1
  • 1
Matt Ball
  • 354,903
  • 100
  • 647
  • 710
0
class Numbers(object):
    def __init__(self):
        self.sum = 0

    def addNumber(self, n):
        self.sum += n

    def currentSum(self):
        return self.sum
aemdy
  • 3,702
  • 6
  • 34
  • 49