2 回答
TA貢獻1786條經(jīng)驗 獲得超13個贊
這是導入和使用類的正確方法:
from lib.MyToken import TokenMgr
manager = TokenMgr()
manager.create(private_key,'foo@gmail.com')
請注意第二行,我們在其中創(chuàng)建了該類的一個實例。
TA貢獻1844條經(jīng)驗 獲得超8個贊
create 方法只能通過對象訪問。所以你應該導入你的類,創(chuàng)建一個實例然后執(zhí)行 instance.create().. 如果你覺得創(chuàng)建不應該綁定到任何對象你可以使用@classmethod 裝飾它,這樣你就可以在沒有對象的情況下訪問..
這里有一些基礎知識。Python 類可以具有三種類型的例程。
實例方法 -> 這些方法與一個對象相關聯(lián),它們接收 self 作為第一個參數(shù),即對象
類方法 -> 對類的所有對象都是通用的,這些方法的第一個參數(shù)是 cls 而不是 self
靜態(tài)方法 -> 它們也綁定到一個類,但它們既不接收類也不接收對象實例作為它們的第一個參數(shù)。這與在類定義之外擁有獨立函數(shù)一樣好。
2 和 3 分別使用 @classmethod 和 @staticmethod 裝飾器實現(xiàn),如下所示:
在 [6] 中:B.create(10) 在靜態(tài)創(chuàng)建方法中..
In [7]: class A:
...: @classmethod
...: def create(cls,x):
...: print("In create method with args {},{}".format(cls, x))
...:
...:
In [8]: A.create(10)
In create method with args <class '__main__.A'>,10
In [4]: class B:
...: @staticmethod
...: def create(x):
...: print("In static create method..")
...:
In [6]: B.create(10)
In static create method..
在您的情況下,您可以根據(jù)需要使用它們中的任何一個,或者創(chuàng)建 TokenManager 類的對象,然后調(diào)用如下所示的創(chuàng)建方法:
tokenManager_obj = TokenManager()
tokenManager_obj.create()
添加回答
舉報
