第五章講輸出輸入,先介紹 raw_input() 與 sys.stdin,再介紹檔案的輸出入,最後則是 pickle。

第六章是講 class,大致上的用法都知道了,古書上說,溫故而知新,真的是又從裡面學到不少東西。

有個範例使用到 with 與 contextlib 的 closing,以前倒是不知道有 contextlib.closing,只知道 with ,contextlib.closing 會負責真正的關閉動作,只單除使用 with 的話,似乎並沒有關閉的效果。可以參考 motw 上的範例

Runtime Binding of methods,這是利用 new module 來做的。首先 import new ,然後定義好函式,就可以像 javascript 那樣動態繫結一個函式為物件的方法:obj.method_func = new.instancemethod(func, obj, clazz)。但 new module 在 2.6 以後要廢棄了,之後儘量改用 types module,新的用法可以參考 StackOverflow上的解答,用法是 obj.method_func = func.__get__(obj, clazz) 。

最後有介紹到 cache decorator 的技巧,只要在 function 上加上 @cache,它會自動把函式傳回值放到 cache,避免重覆運算,相當實用的技巧。

更多有關 The Definitive Guide to Jython: Python for the Java Platform 的事情
arrow
arrow

    elleryq 發表在 痞客邦 留言(0) 人氣()