導航:首頁 > 編程語言 > pythonsimhash模塊

pythonsimhash模塊

發布時間:2022-08-21 05:58:35

A. 新手python 使用pycharm run了下simhash 但是 怎麼都出不來結果

在界面上方點: file--open(打開你要運行的程序) 然後再點擊Run(Ctrl+Shift+F10)運行該程序即可.

B. python有simhash模塊嗎

在界面上方點: file--open(打開你要運行的程序) 然後再點擊Run(Ctrl+Shift+F10)運行該程序即可.

C. python中simhash包怎麼用

#!/usr/bin/python
#coding=utf-8
classsimhash:

#構造函數
def__init__(self,tokens='',hashbits=128):
self.hashbits=hashbits
self.hash=self.simhash(tokens);

#toString函數
def__str__(self):
returnstr(self.hash)

#生成simhash值
defsimhash(self,tokens):
v=[0]*self.hashbits
fortin[self._string_hash(x)forxintokens]:#t為token的普通hash值
foriinrange(self.hashbits):
bitmask=1<<i
ift&bitmask:
v[i]+=1#查看當前bit位是否為1,是的話將該位+1
else:
v[i]-=1#否則的話,該位-1
fingerprint=0
foriinrange(self.hashbits):
ifv[i]>=0:
fingerprint+=1<<i
returnfingerprint#整個文檔的fingerprint為最終各個位>=0的和

#求海明距離
defhamming_distance(self,other):
x=(self.hash^other.hash)&((1<<self.hashbits)-1)
tot=0;
whilex:
tot+=1
x&=x-1
returntot

#求相似度
defsimilarity(self,other):
a=float(self.hash)
b=float(other.hash)
ifa>b:returnb/a
else:returna/b

#針對source生成hash值(一個可變長度版本的Python的內置散列)
def_string_hash(self,source):
ifsource=="":
return0
else:
x=ord(source[0])<<7
m=1000003
mask=2**self.hashbits-1
forcinsource:
x=((x*m)^ord(c))&mask
x^=len(source)
ifx==-1:
x=-2
returnx
if__name__=='__main__':
s='Thisisateststringfortesting'
hash1=simhash(s.split())

s=''
hash2=simhash(s.split())

s='nainaigexiongcao'
hash3=simhash(s.split())

print(hash1.hamming_distance(hash2),"",hash1.similarity(hash2))
print(hash1.hamming_distance(hash3),"",hash1.similarity(hash3))

閱讀全文

與pythonsimhash模塊相關的資料

熱點內容
度人經pdf 瀏覽:898
怎麼配置android遠程伺服器地址 瀏覽:956
java程序員看哪些書 瀏覽:939
什麼app可以免費和外國人聊天 瀏覽:793
pdf手寫筆 瀏覽:178
別永遠傷在童年pdf 瀏覽:986
愛上北斗星男友在哪個app上看 瀏覽:419
主力散戶派發源碼 瀏覽:668
linux如何修復伺服器時間 瀏覽:59
榮縣優途網約車app叫什麼 瀏覽:477
百姓網app截圖是什麼意思 瀏覽:226
php如何嵌入html 瀏覽:813
解壓專家怎麼傳輸 瀏覽:745
如何共享伺服器的網路連接 瀏覽:134
程序員簡易表白代碼 瀏覽:168
什麼是無線加密狗 瀏覽:64
國家反詐中心app為什麼會彈出 瀏覽:69
cad壓縮圖列印 瀏覽:104
網頁打開速度與伺服器有什麼關系 瀏覽:865
android開發技術文檔 瀏覽:65