Self-contained ISO 3166-1 country definitions.
Project description
- Version:
- 2.1.1
ISO 3166-1 defines two-letter, three-letter, and three-digit country codes. python-iso3166 is a self-contained module that converts between these codes and the corresponding country name.
Installation
$ pip install iso3166
Usage
Country details
>>> from iso3166 import countries >>> >>> countries.get('us') Country(name='United States', alpha2='US', alpha3='USA', numeric='840') >>> countries.get('ala') Country(name='Åland Islands', alpha2='AX', alpha3='ALA', numeric='248') >>> countries.get(8) Country(name='Albania', alpha2='AL', alpha3='ALB', numeric='008')
Country lists and indexes
>>> from iso3166 import countries >>> for c in countries: print(c) >>> Country(name='Afghanistan', alpha2='AF', alpha3='AFG', numeric='004') Country(name='Åland Islands', alpha2='AX', alpha3='ALA', numeric='248') Country(name='Albania', alpha2='AL', alpha3='ALB', numeric='008') Country(name='Algeria', alpha2='DZ', alpha3='DZA', numeric='012')
>>> import iso3166 >>> iso3166.countries_by_name >>> {'AFGHANISTAN': Country(name='Afghanistan', alpha2='AF', alpha3='AFG', numeric='004'), 'ALBANIA': Country(name='Albania', alpha2='AL', alpha3='ALB', numeric='008'), 'ALGERIA': Country(name='Algeria', alpha2='DZ', alpha3='DZA', numeric='012'), ... >>> iso3166.countries_by_numeric >>> {'004': Country(name='Afghanistan', alpha2='AF', alpha3='AFG', numeric='004'), '008': Country(name='Albania', alpha2='AL', alpha3='ALB', numeric='008'), '010': Country(name='Antarctica', alpha2='AQ', alpha3='ATA', numeric='010'), ... >>> iso3166.countries_by_alpha2 >>> {'AD': Country(name='Andorra', alpha2='AD', alpha3='AND', numeric='020'), 'AE': Country(name='United Arab Emirates', alpha2='AE', alpha3='ARE', numeric='784'), 'AF': Country(name='Afghanistan', alpha2='AF', alpha3='AFG', numeric='004'), ... >>> iso3166.countries_by_alpha3 >>> {'ABW': Country(name='Aruba', alpha2='AW', alpha3='ABW', numeric='533'), 'AFG': Country(name='Afghanistan', alpha2='AF', alpha3='AFG', numeric='004'), 'AGO': Country(name='Angola', alpha2='AO', alpha3='AGO', numeric='024'), ...
Changes
2.1.1 - July 11, 2022
Move install metadata from setup.py to setup.cfg
Add py.typed to source distribution
2.1.0 - July 11, 2022
Updated entries
“Turkey” changed to “Türkiye”
2.0.2 - Sep 20, 2021
Add the py.typed marker file in accordance with PEP 561
2.0.1 - Sep 14, 2021
Add python_requires to setup.py
2.0.0 - Sep 14, 2021
Add type hints throughout codebase (thanks blokje!)
Drop support for Python versions prior to 3.6
1.0.1 - Dec 13, 2019
Include test files in source distribution (thanks pmosetc!)
Added all Python 3 versions to tox.ini and supported list
1.0 - March 19, 2018
Updated entries
“Macedonia, the former Yugoslav Republic of” changed to “North Macedonia” (effective 2019-03-13)
Added numeric code 983 for Kosovo to mirror usage by the National Statistical Office of Canada (thanks betaboon!)
0.9 - July 21, 2018
Updated entries
New entry for Kosovo (XK / XKX)
Swaziland changed to Eswatini (effective 2018-07-16)
0.8 - February 5, 2017
Updated entries
Czechia (changed 2016-09)
United Kingdom of Great Britain and Northern Ireland (changed 2014-12)
0.7 - February 13, 2015
Added new attribute apolitical_name to Country. This field reflects the ISO short name but has unnecessarily inflammatory modifiers removed.
Specifically: “Taiwan, Province of China” maps to “Taiwan” and “Palestine, State of” maps to “Palestine.”
Updated entries
Holy See (changed in 2014-12)
CountryLookup now raises KeyError when passed an unknown integer rather than AttributeError. (thanks unsignedint!)
0.6 - September 28, 2014
- Updated entries
Cabo Verde (changed in 2013-11)
Documented the dictionaries used for looking up countries by alpha2, etc. (thanks brunetton!)
0.5 - February 13, 2014
Added __contains__ to CountryLookup (thanks tomako!)
- Current through ISO newsletter VI-16
No changes needed
0.4 - February 14, 2013
Current through ISO newsletter VI-14
- Updated entries
Palestine
0.3 - September 4, 2012
Current through ISO newsletter VI-13
Fix changes from 0.2 (thanks vincentfretin!):
Venezuela
Saint Helena
Bolivia
0.2 - March 26, 2012
Current through ISO newsletter VI-12
Added missing entry for Afghanistan
Updated entries
Bolivia (ISO Newsletter VI-6)
Libya (VI-11)
Saint Helena (VI-7)
Sudan (VI-10)
Venezuela (VI-5)
New entries:
Bonaire, Sint Eustatius and Saba (VI-8)
Curaçao (VI-8)
Sint Maarten (Dutch part) (VI-8)
South Sudan (VI-10)
Deleted entries:
Netherlands Antilles (VI-8)
0.1 - December 14, 2010
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file iso3166-2.1.1.tar.gz
.
File metadata
- Download URL: iso3166-2.1.1.tar.gz
- Upload date:
- Size: 12.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcd551b8dda66b44e9f9e6d6bbbee3a1145a22447c0a556e5d0fb1ad1e491719 |
|
MD5 | b1661b2e68fea5a248d02ef00e59c369 |
|
BLAKE2b-256 | 5c11b5023c736a185a88ebd0d38646af6f4d1b4c9b91f2ca84e08e5d2bc7ac3c |
File details
Details for the file iso3166-2.1.1-py3-none-any.whl
.
File metadata
- Download URL: iso3166-2.1.1-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 263660b36f8471c42acd1ff673d28a3715edbce7d24b1550d0cf010f6816c47f |
|
MD5 | a1ce018f651890df8b7ef9551cf4c978 |
|
BLAKE2b-256 | 08d0bf18725b8d47f37858ff801f8e4d40c6982730a899725bdb6ded62199954 |