今天在網上看到type的一段代碼 ,然后查了一下文檔,才知道type還有三個參數的用法。
http://docs.python.org/2/library/functions.html#type
以前只是知道type可以檢測對象類型。然后發現了一個有趣的用法。
代碼如下:
def println(self):
a = 1 + 1
print “%s,%s” % (self.aa, a)
A = type(‘A',(),{‘aa':'print a', ‘println': println})
a = A()
type(a)
Out[11]: __main__.A
a.println()
print a,2
第一個參數是類的名字,第二個元組是父類,第三個是屬性。
哈哈,我覺得很好笑,雖然我函數里邊第一個參數還是寫的self,但是如果寫一段代碼都用這種方法定義類,然后再不注意類名的規范,代碼會變的很難讀。
新聞熱點
疑難解答