Запомните местоположение в любой точке мира всего тремя словами.
Попробуйте: http://these3words.herokuapp.com/
Несколько интересных локаций:
Это приложение было вдохновлено http://what3words.com/
>>> import thesethreewords as these
# the home of particle physics
>>> CERN = (46.232355, 6.055419)
>>> three = these.three_words(CERN)
>>> print three
'turks-yunnan-salant'
>>> these.decode(three)
(46.232335567474365, 6.055419445037842)
Посмотрите, где это находится на карте This3Words.
Вам необходимо установить библиотеки geohash и Bottle:
$ pip install geohash
$ pip install bottle
На земной поверхности имеется множество квадратов размером 3х3 метра. Чтобы закодировать их всего тремя словами, требуется длинный список слов, в результате в него попадают довольно малопонятные слова. Если вы можете жить с необходимостью запоминать шесть слов, список слов будет намного короче. Список слов из шести слов взят из потрясающей библиотеки humanhash. Слова были выбраны для максимальной ясности в человеческом общении, они должны быть более знакомыми, чем слова из трех слов:
>>> six = these.six_words(CERN)
>>> print six
'spaghetti-carolina-kentucky-oscar-iowa-table'
>>> these.decode(six)
(46.232335567474365, 6.055419445037842)
Каждая пара широты и долготы преобразуется в девятисимвольный геохэш. Это обеспечивает разрешение около 3 метров на всех широтах. Затем геохэш преобразуется в целое число, которое кодируется как строка слов.
Список слов, используемый для кодирования geohash
всего в три слова, использует словарь вашего локального компьютера. Предпринимаются некоторые попытки удалить действительно непонятные слова, но могло бы быть и лучше. Вам необходимо использовать один и тот же список слов при кодировании и декодировании хеша these-3-words
.
Хэш these-3-words
имеет те же свойства, что и geohash
, который имеют схожие хэши these-3-words
для близлежащих местоположений.
>>> other_CERN_site = (46.256811, 6.056792)
>>> six = these.six_words(other_CERN_site)
>>> print six
'spaghetti-carolina-kentucky-utah-seventeen-neptune'
>>> these.decode(six)
(46.256797313690186, 6.056792736053467)
Другой сайт ЦЕРН находится здесь, на карте.
Файл server.py
предоставляет крошечный веб-сервис, который позволяет отображать местоположение, заданное тремя словами, на карте Google Maps.
Сервер требует установки Bottle.py. Его можно запустить локально, набрав ./server.py
или python server.py
соответственно.
предоставлено вам @betatim и @kdungs Productions