世理是拳頭力量大。當我拳頭小的時候,不是很喜歡這樣。

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
Add a trackback
Add a comment

Your name. (required)

Your personal website. (optional)

Your email address. Will not show in page. (suggested, but optional)

Text format is "Plain Text".

Enter "Tqdzd"
© hover year to navigate month: powered by django