2010年6月26日 星期六

Python 2.6 的好東西

我目前在用 Ubuntu 8.04, 但 Ubuntu 8.04 只提供 python 2.5 的 deb檔。想換 Ubuntu 10.04, 但 10.04 卻只有 python 2.6 的 deb 檔。只好先暫時守著 Ubuntu 8.04 + python 2.5。平時看文件偶而會看到一些 2.6 才有的好東西, 不能用真是太難過了。這篇暫記一些看到的好東西, 避免一段時間過去沒用過就忘光了。
  • with: 2.5 可用 from __future__ import with_statements 取得。
  • multiprocessing: 2.5 可從 python-multiprocessing 裝。
  • namedtuple: 產生 value object 的 factory function。之前傻傻地寫過類似的 code generator, 功能弱多了。
  • productpermutationscombinations: 產生排列組合的函數。用 product 可以將多組參數的組合攤平成一個迴圈, 語意上更容易理解。參考官網的示意說明, 我自己寫了個 product 來用。
  • sys.getsizeof: 取得物件在記憶體中占的 byte 數。最佳化和協助理解 python 內部結構的好東西啊, 我一直很困惑為什麼沒用多少東西就吃掉一堆記憶體。
之後看到再陸續補上吧, 有些已忘掉了...。

2 則留言:

在 Fedora 下裝 id-utils

Fedora 似乎因為執行檔撞名,而沒有提供 id-utils 的套件 ,但這是使用 gj 的必要套件,只好自己編。從官網抓好 tarball ,解開來編譯 (./configure && make)就是了。 但編譯後會遇到錯誤: ./stdio.h:10...