符合ISO 639标准的Python库
项目描述
状态
许可证
GNU Affero通用公共许可证版本3 (AGPLv3)
支持
ISO 639-1
ISO 639-2
ISO 639-3
ISO 639-5
破坏性变更
0.4.4: retired 已更改为 { ‘code’: (datetime, [_Language, …], ‘description’) }.
0.4.0: alpha3 已重命名为 part3. languages.alpha3 可能会在未来用作所有“三字母代码”的聚合。
兼容性
这个库旨在与 pycountry.languages v1.11及之前版本完全兼容。在v1.12中,它们破坏了自己的API,这个库将 不支持 新的API。
它提供了以下属性抽象
terminology -> part2t
参考文献 -> 第2部分b
alpha2 -> 第1部分
如果您没有使用 pycountry.languages 的意图,或者需要保持兼容性,请使用 partX 属性以提高简洁性和清晰度。
用法
根据 pycountry.languages v1.11 文档改编,并增加了修改和进一步的内容。
>>> from iso639 import languages
>>> from pprint import pprint
>>> len(languages)
7981
>>> type(list(languages)[0])
<class 'iso639.iso639._Language'>
# Compatibility
>>> aragonese = languages.get(alpha2='an')
>>> aragonese.alpha2
'an'
>>> aragonese.bibliographic
'arg'
>>> aragonese.terminology
'arg'
>>> aragonese.name
'Aragonese'
>>> bengali = languages.get(alpha2='bn')
>>> bengali.name
'Bengali'
# We *do not* deviate from the standard
>>> try:
... bengali.common_name
... except AttributeError as e:
... print(e)
'_Language' object has no attribute 'common_name'
# New API
>>> aragonese = languages.get(part1='an')
>>> aragonese.part1
'an'
>>> aragonese.part2b
'arg'
>>> aragonese.part2t
'arg'
>>> aragonese.part3
'arg'
>>> aragonese.name
'Aragonese'
>>> aragonese.inverted
'Aragonese'
>>> pprint(vars(aragonese))
{'inverted': 'Aragonese',
'macro': '',
'name': 'Aragonese',
'names': [],
'part1': 'an',
'part2b': 'arg',
'part2t': 'arg',
'part3': 'arg',
'part5': ''}
>>> sanapana = languages.get(retired='sap')
>>> [type(elem).__name__ for elem in sanapana]
['datetime', 'list', 'str']
>>> [lang.part3 for lang in sanapana[1]]
['spn', 'aqt']
包含外部数据
ISO 639-1,于 2014-11-28
ISO 639-2,于 2014-11-28
ISO 639-3 Code Set,日期为 2015-05-05
ISO 639-3 Language Names Index,日期为 2015-05-05
ISO 639-3 Macrolanguage Mappings,日期为 2015-05-05
ISO 639-3 Retired Code Element Mappings,日期为 2015-05-05
ISO 639-5,日期为 2011-05-12
项目详情
关闭
iso-639-0.4.5.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | dc9cd4b880b898d774c47fe9775167404af8a85dd889d58f9008035109acce49 |
|
MD5 | cc282daf57f57061a9309f2567bff052 |
|
BLAKE2b-256 | 5a8d27969852f4e664525c3d070e44b2b719bc195f4d18c311c52e57bb93614e |