python 如何判斷是否有中文亂碼。
類似:
楀鉤鏃惰鐪熷涔狅纴鍒昏嫤閽葷爺鎶?湳錛屾墡瀹炲伐浣滐纴瑙勮寖綆$悊銆備漢鎬寲鐨勭鐞嗗嚌镵氫簡涓?鎵規(guī)妧鏈騫詫纴寰楀埌浜嗗叏鍏徃鍛樺伐鐨勪俊璧栥?鍛樺伐100%鍙傚姞鍖諱繚錛?5钖嶅憳宸弬鍔犲煄淇濓纴澶栨潵鍛樺伐鎻愪緵椋熷錛屾椂鏃跺埢鍒諱互鍏變駭鍏氬憳鐨勬爣鍑嗚 閲忚嚜宸憋纴鍦濂戒紒涓氱殑钖屾椂錛屼負紺句細浜嬩笟鎹愯祫鍔10涓囧厓錛屾崘璧犺傳鍥板憳宸灞炴不鐥?涓囧厓錛屽府鍔傳鍥板鐢?.6涓囧厓錛屾崘璧犳枃鏋椾腑瀛紳鏈鴻澶?涓囧厓錛屾厛锽勬崘鐚?涓囧厓銆?/p> 鍛拰鍏村悓蹇楀浜嬩笟鎵憲榪芥眰錛屽湪榪欏崄鍑犲勾浼佷笟鍙戝睍榪囩涓纴鍏呭垎鍙戞尌浜嗕竴涓叡浜厷鍛樼殑鍏堥攱妯寖甯浣滅敤錛屽彈鍒頒簡闀囨斂搴溿?甯傜駭涓葷閮桊鐨勮褰幫纴紺句細钖勭晫鐨勪竴鑷村璇勶纴浠栧潥淇彧鏈変笉鏂彂灞曪
采用分詞的方法也不錯, 亂碼是不太可能成詞的(但有生僻字不一定是亂碼).
參考我下面的代碼:
# encoding=utf-8
import jieba
def new_len(iterable):
try:
return iterable.__len__()
except AttributeError:
return sum(1 for _ in iterable)
normal_str="我來到北京清華大學"
normal_len=len(normal_str)
seg_list = jieba.cut(normal_str)
res = "正常文本:"+str(normal_len / new_len(seg_list))
print(res)
luanma_str = "楀鉤鏃惰鐪熷涔狅纴鍒昏嫤閽葷爺鎶?湳錛屾墡瀹炲伐浣滐纴瑙勮寖綆$悊銆備漢鎬寲鐨勭鐞嗗嚌镵氫簡涓?鎵規(guī)妧鏈騫詫纴寰楀埌浜嗗叏鍏徃鍛樺伐鐨勪俊璧栥?鍛樺伐100%鍙傚姞鍖諱繚錛?5钖嶅憳宸弬鍔犲煄淇濓纴澶栨潵鍛樺伐鎻愪緵椋熷錛屾椂鏃跺埢鍒諱互鍏變駭鍏氬憳鐨勬爣鍑嗚 閲忚嚜宸憋纴鍦濂戒紒涓氱殑钖屾椂錛屼負紺句細浜嬩笟鎹愯祫鍔10涓囧厓錛屾崘璧犺傳鍥板憳宸灞炴不鐥?涓囧厓錛屽府鍔傳鍥板鐢?.6涓囧厓錛屾崘璧犳枃鏋椾腑瀛紳鏈鴻澶?涓囧厓錛屾厛锽勬崘鐚?涓囧厓銆?/p> 鍛拰鍏村悓蹇楀浜嬩笟鎵憲榪芥眰錛屽湪榪欏崄鍑犲勾浼佷笟鍙戝睍榪囩涓纴鍏呭垎鍙戞尌浜嗕竴涓叡浜厷鍛樼殑鍏堥攱妯寖甯浣滅敤錛屽彈鍒頒簡闀囨斂搴溿?甯傜駭涓葷閮桊鐨勮褰幫纴紺句細钖勭晫鐨勪竴鑷村璇勶纴浠栧潥淇彧鏈変笉鏂彂灞曪"
luanma_len = len(luanma_str)
luanma = jieba.cut(luanma_str)
res = "亂碼:"+str(luanma_len / new_len(luanma))
print(res)
輸出結果
正常文本:2.25
亂碼:1.0590062111801242
正常結果一般在2以上, 亂碼非常接近1, 可以認為1.2以下就一定是亂碼了.
也可轉(zhuǎn)成概率公式.
設為1時概率為0.9, 2時概率為0.1,可得下面的公式
$$ P = {1 \over 1 + \exp{(4.395*x-6.594)}} $$
式中:
x--為字符串長度與分詞數(shù)組長度的比值
P--為概率.
這個方法引入了結巴分詞模塊
需要提前安裝
pip3 install jieba
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學院和江蘇省首批服務外包人才培訓基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術與教育服務機構,發(fā)展為教育服務業(yè)的綜合性企業(yè)集團,成為集合面授教學培訓、網(wǎng)
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務負責iOS教學及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術, 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術顧問,美國Dachieve 系統(tǒng)架構師,美國AngelEngineers Inc. 系統(tǒng)架構師。