第十三章、 特殊的方法
1) 特殊的方法
__init__(self,...) 這個方法在新建物件恰好要被返回使用之前被呼叫。
__del__(self) 恰好在物件要被刪除之前呼叫。
__str__(self) 在我們對物件使用print語句或是使用str()的時候呼叫。
__lt__(self,other) 當使用 小於 運算子(<)的時候呼叫。類似地,對於所有的運算子(+,>等等)都有特殊的方法。
__getitem__(self,key) 使用x[key]索引操作符的時候呼叫。
__len__(self) 對序列物件使用內建的len()函式的時候呼叫。
2) exec和eval語句
exec語句用來執行儲存在字串或檔案中的python語句。
exec 'print "hello world"'eval語句用來計算儲存在字串中的有效python表示式。
eval('2*3')3) repr函式
取得物件的規範字串表示。反引號(也稱轉換符)完成相同的功能。
i = ['item']
print `i`
repr(i)
ord('a') #97 返回字元對應整數
with/as context managers (2.6+)
with open('data') as myfile:
process(myfile)
第十三章 併發
13.1 動機 13.2 基本執行緒 如果必須要控制現成的執行順序,最好是根本不用執行緒,而是自己編寫特定順序彼此控制的協作子程式。繼承thread類或者實現runnable介面。內部類實現。13.3 共享受限資源 1 如果要對類中的某個方法進行同步控制,最好同步所有方法。如果忽略了其中乙個,通常很...
第十三章 類
1.類簡單地說是乙個性的資料型別。類當中有資料成員,和成員函式。類的基本思想就是體現出資料的抽象和封裝。2.這裡只需要說明乙個問題即可 就是類成員函式的const型別 class screen public const int get const int i const int j const 這裡...
第十三章 事件
1 事件的作用 事件是對委託的封裝,如同屬性對字段的封裝。封裝後可以在委託上實現更複雜的邏輯。1.1 封裝訂閱 委託允許使用 對其進行賦值,但向乙個委託例項賦值多個委託時,使用 會造成覆蓋之前的委託。事件只支援 或 對事件進行賦值 1.2 封裝發布 委託可以在其他類進行訪問,而事件可以確保只有包容類...