Erinnern Sie sich mit nur drei Worten an einen Ort irgendwo auf der Welt.
Probieren Sie es aus: http://these3words.herokuapp.com/
Einige interessante Orte:
Diese App wurde von http://what3words.com/ inspiriert.
>>> 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)
Sehen Sie, wo sich dies auf der These3Words-Karte befindet.
Sie müssen die Geohash- und Bottle-Bibliotheken installieren:
$ pip install geohash
$ pip install bottle
Auf der Erdoberfläche gibt es viele 3x3m große Quadrate. Um sie in nur drei Wörtern zu kodieren, ist eine lange Wortliste erforderlich, was dazu führt, dass einige ziemlich unbekannte Wörter darauf landen. Wenn Sie damit leben können, sich sechs Wörter merken zu müssen, ist die Wortliste viel kürzer. Die Wortliste mit sechs Wörtern stammt aus der erstaunlichen Humanhash-Bibliothek. Die Wörter wurden ausgewählt, um die Klarheit der menschlichen Kommunikation zu maximieren. Sie sollten vertrauter sein als die Wörter auf der Liste mit drei Wörtern:
>>> six = these.six_words(CERN)
>>> print six
'spaghetti-carolina-kentucky-oscar-iowa-table'
>>> these.decode(six)
(46.232335567474365, 6.055419445037842)
Jedes Breiten-/Längengradpaar wird in einen Geohash mit neun Zeichen umgewandelt. Dies ermöglicht eine Auflösung von etwa 3 Metern in allen Breitengraden. Der Geohash wird dann in eine Ganzzahl umgewandelt, die als Wortfolge codiert wird.
Die Wortliste, die zum Codieren des geohash
in nur drei Wörter verwendet wird, verwendet das Wörterbuch Ihres lokalen Computers. Es werden einige Versuche unternommen, wirklich obskure Wörter zu entfernen, aber es könnte besser sein. Sie müssen beim Kodieren und Dekodieren eines these-3-words
Hashs dieselbe Wortliste verwenden.
Der these-3-words
-Hash verfügt über dieselben Eigenschaften wie ein geohash
, den benachbarte Standorte über ähnliche these-3-words
-Hashes verfügen
>>> 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)
Der andere CERN-Standort ist hier auf einer Karte.
Die Datei server.py
stellt einen winzigen Webservice bereit, der es ermöglicht, einen durch drei Wörter angegebenen Standort auf einer Google Maps-Karte anzuzeigen.
Der Server erfordert die Installation von Bottle.py. Es kann lokal ausgeführt werden, indem Sie ./server.py
bzw. python server.py
eingeben.
Präsentiert von @betatim und @kdungs Productions