甘道夫 Geohash基礎應用By Python

2021-08-03 17:01:22 字數 1287 閱讀 5973

python環境下的geohash庫推薦:

該庫基礎功能完整,包括座標編碼為geohash,geohash解碼為座標,獲取指定geohash周邊9宮格的geohash。

安裝:pip install mzgeohash

geohash編碼的簡單示例如下:

輸入檔案每行包含乙個座標,例如117.445044487,40.0585138025

處理**:

# !/usr/bin/env python

# encoding:utf-8

import time

import sys

import mzgeohash

def test(inputfile):

outputfile = file(inputfile+".geohash", 'a')

lineno = 0

isotimeformat='%y-%m-%d %x'    

for line in open(inputfile):

lineno += 1

if lineno % 100 == 0:

print "process line :",lineno,"    ",time.strftime(isotimeformat,time.localtime())

sys.stdout.flush()

xy = line.strip()

x = float(xy.split(",")[0])

y = float(xy.split(",")[1])

geohash = mzgeohash.encode((x,y),length=8) 

outputfile.write(xy +"\t"+str(geohash )+"\n")

if  __name__=="__main__":

inputfile = sys.argv[1]

test(inputfile)

產出檔案每行示例:117.445044487,40.0585138025  wx5ebs

附上官方的簡明使用示例:

>>> import mzgeohash

>>> mzgeohash.decode('xn76urwe1g9y')

(139.76608408614993, 35.681382017210126)

>>> mzgeohash.encode((139.76608408614993, 35.681382017210126))

'xn76urwe1g9y'

>>> mzgeohash.neighbors('xn76urwe1g9y')

甘道夫 conda及pip公司內網無法使用

當在公司內網環境使用conda時,即使 能通過瀏覽器訪問,執行conda命令時也可能提示無法連線。此時我們需要做的不是修改conda源 清華 中科大等國內源由於版權問題都已停止conda服務 我們需要做的是配置 參考 解決方案1 conda 執行命令conda config,建立配置檔案.conda...

JAVA基礎特性 ThreadLocal 應用

threadlocal是什麼呢?其實threadlocal並非是乙個執行緒的本地實現版本,它並不是乙個thread,而是thread local variable 執行緒區域性變數 也許把它命名為threadlocalvar更加合適,他實現了執行緒的變數隔離,不同的執行緒可以維護自己的變數,他在內部...

django基礎 django中的app應用

urlpatterns path lw2 views.lw2 先設定子路由和乙個實現登入功能頁面 login.html 使用者名稱 密碼 通過request.post.get 方法可以返回使用者登入時的資訊,根據資訊來判斷和進行下一事件。如果登入資訊與資料庫中資訊不相匹配,則重新返回新的登入頁面。此...