此代碼:獲取一類的方法順序,這是在代碼
import inspect
class Obj():
def c(self):
return 1
def b(self):
return 2
def a(self):
return 3
o = Obj()
for name, value in inspect.getmembers(o, inspect.ismethod):
print str(value())+" "+name
打印:
3 a
2 b
1 c
由於inspect.getmembers
回報在列表中的一個對象的所有成員(名稱,值)對按名稱排序,因爲您可以在https://docs.python.org/2/library/inspect.html#inspect.getmembers
中讀取但我想以與成員編寫代碼相同的順序獲取該列表,換句話說,輸出將是:
1 c
2 b
3 a
有沒有辦法做到這一點?
感謝
遺傳怎麼樣?如果'o'方法被定義在兩個不同的類中,它們應該以什麼順序進來? – user2357112
[如何以與聲明相同的順序讀取類屬性]的可能重複項(http://stackoverflow.com/questions/4459531/how-to-read-class-attributes-in-the-same-order-as -declared) – pvg
這是哪個Python版本? Python 2和3具有非常不同的解決方案(甚至小版本也有差異)。 –