Hello~你們好~這裏是Paradoxical的wtf課堂第一期,接下來Paradoxical會和你一塊兒學習python的奇妙特性哦~python
今天學習的是類和對象的相關知識。app
能夠看到第一句代碼和第二句代碼對比了兩個對象,而兩個對象應該是不一樣。可是第三句代碼對比兩個對象的哈希值倒是相同的。第四句代碼對比了兩個對象在內存中的地址,也是相同的。這是爲啥鴨?來看看解釋。ide
原來是跟對象的生命週期有關。解釋中對類進行了改寫,讓咱們更加清晰地看到對象的建立和銷燬過程。學習
第一句代碼用is比較兩個對象,由於同一行代碼連續建立兩個對象,第一個對象還沒銷燬時就建立了第二個對象,因此它們的在內存中的地址不一樣,用is比較的結果是False。
spa
而第二局代碼建立第一個對象後把內存地址傳給id()後就銷燬了,建立第二個對象時就會在同一個內存地址建立,因此它們的對比它們的內存地址會是True。orm