簡體   English   中英

如何從對象中添加整數變量?

[英]How do you add integer variables from objects?

例如,如果我有此代碼。 我如何將所有對象添加在一起?

    class saved_money():

    def set_amount(self, amt):
        self.amount = amt
        return "$"+(format(self.amount, '.2f'))+""

運行代碼后,我將在Python Shell中鍵入以下內容:

    a = saved_money()
    a = set_amount(100)

可以有任意數量的對象,我想知道是否有一種方法可以將它們全部添加在一起。

class saved_money():
    def __init__(self):
        #self.amounts = []
        #or
        self.sumAll = 0

    def set_amount(self, amt):
        #self.amounts.append(amt)
        #return "$"+(format(sum(self.amounts), '.2f'))+""
        #or
        self.sumAll += amt
        return "$"+(format(self.sumAll, '.2f'))+""


a = saved_money()
print a.set_amount(100)
print a.set_amount(200)

>>> $100.00
>>> $300.00

您可以在創建類的實例時創建類變量。 然后,您可以向其中添加amt並在每次調用set_amount(amt)將其返回

您可以使用全局變量:

globalTotal = 0

class saved_money():

    def set_amount(self, amt):
        global globalTotal
        globalTotal += amt
        self.amount = amt
        return "$"+(format(self.amount, '.2f'))+""

輸出:

>>> a = saved_money()
>>> a.set_amount(20)
'$20.00'
>>> globalTotal
20
>>> b = saved_money()
>>> b.set_amount(50)
'$50.00'
>>> globalTotal
70

Python支持運算符重載。 在您的情況下,您可以重載add方法,然后可以鍵入a + b之類的內容。

檢查https://docs.python.org/2/library/operator.html以獲得更多詳細信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM