世理是拳頭力量大。當我拳頭小的時候,不是很喜歡這樣。
ISO 3166 是定義國家/獨立地理區的國際標準。不過它很討人厭。
討厭歸討厭,如果想要一份「正確的」國家列表,它大概是最容易拿到的資料;我們常用的 TW, CN, US 等雙字母國別代碼是編在 ISO 3166 的 alpha-2 表裡面。
在 Python 下有 pycountry 替 ISO 3166 實作了一份 mapping。pycountry 內部存了一組 XML-based 的資料庫,在被 import 的時候會 on-demand 載入這份資料庫,然後生成一份 iterable mapping-like 的物件,當作這些資料的模型。除了 ISO 3166 之外,pycountry 還包裝了 ISO 639 語言代碼表,以及 ISO 4217、ISO 15924。
pycountry model 得很好很方便,但用下去實在爽不起來;為了爽,歡迎大家愛用以下 monkey patching:
# Monkey patching for TW. try: import pycountry tw = pycountry.countries.get(alpha2='TW') tw.name = 'Taiwan' tw.official_name = 'Taiwan, Republic of China' except ImportError: pass
Posted by yungyuc
at 07:30,
0 comment,
0 trackback.
Navigate
- Previous: 也來賀一下 @2008/09/07
- Next: 用 Python 搞定亂七八糟字串 @2008/11/23
Add a trackback
Please send trackback to: http://blog.seety.org/everydaywork/2008/9/19/1061/trackback/.
Add a comment