[英]Best way to call a method - Python
我有這兩個類,但是我想知道在類中調用函數的最佳方法是什么。
我喜歡將此屬性與以下屬性一起使用:
class myclass():
def myfunction(self):
return self.x + self.y
z = myclass()
z.x = 4
z.y = 3
print z.myfunction()
但我不知道這是否正確。 還是我應該用它代替最后一個?
class myclass():
def myfunction(self,x,y):
return x + y
z = myclass()
print z.myfunction(4,3)
這取決於。 x
和y
是myclass()
狀態的一部分,還是它們在外部與類交互?
如果x
和y
不屬於myclass()
實例狀態的一部分,則不應將它們存儲在屬性中。 它們將作為參數傳遞。
假設您有一個汽車物體,並且您需要知道如果汽車與其他物體碰撞會發生什么情況。 “其他”不是汽車的一部分,因此您可以調用car.collide()
方法並傳入“其他”作為參數:
car.collide(something_else)
但是碰撞時的汽車速度以及諸如汽車質量之類的東西都是汽車對象狀態的一部分,因此它們是以下屬性:
car.speed = 80
car.mass = 1200
car.collide(something_else)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.