PyWorldAtlas

Offline · no account · made for learning

The whole world, offline, in plain Python.

Every country, 200,000 places, the sun, statistics since 1960, and 3D maps. Free, and it works without internet.

248 countries and areas · 200,000 places · 0 dependencies · Python 3.10 to 3.14 · version 0.13.1

Start in three lines

python -m pip install pyworldatlas
>>> from pyworldatlas import Atlas
>>> atlas = Atlas()
>>> print(atlas.border_path("Portugal", "Poland"))
Portugal → Spain → France → Germany → Poland (4 border crossings)

Lost? atlas.help() prints a dozen more things to try.

Pick your path

Try these

Find anything by name:

>>> atlas.find("Kilimanjaro", limit=1)
(Place(english_name='Mount Kilimanjaro', kind='mountain', country_code='TZ'),)

Measure the world:

>>> print(atlas.distance_between("Paris", "Tokyo"))
9,713 km

Quiz yourself:

>>> print(atlas.quiz("capitals", region="Western Europe")[0])
What is the capital of Switzerland?  1) Monaco  2) Bern  3) Amsterdam  4) Berlin

Rank countries:

>>> print(atlas.rank("coastline", limit=1)[0])
#1 Canada: 202,080 km

See the terrain in 3D, after pyworldatlas get maps:

atlas.map("Iceland").show(auto_rotate=True)
Animated PyWorldAtlas Standard 3D elevation map of Iceland

Every guide is in the menu, from Country profiles to The world in numbers. To learn where the data comes from, read Why PyWorldAtlas?, Data sources and freshness, and Educational purpose and editorial policy.