Python判斷兩個相等的中文字符串為false,將兩個待比較的字符串都把unicode編碼設(shè)為‘utf-8'也不能解決問題,具體原因如下:
1.首先查看待比較兩個字符串的編碼格式 ,使用命令
import chardet......string_code = chardet.detect(string_word)
比較兩個字符串的編碼結(jié)果,如下圖所示
一個編碼格式為‘UTF-8-SIG',另一個編碼格式為‘utf-8',兩個字符串的編碼格式不同,所以比較的結(jié)果為不相等
出現(xiàn)編碼為‘UTF-8-SIG'是因?yàn)槲募诖鎯Φ臅r候以UTF-8格式編碼保存,將文件以UTF-8無BOM格式編碼存儲,則讀取出的數(shù)據(jù)編碼格式自然變?yōu)椤畊tf-8'
2.文件以UTF-8無BOM格式編碼重新存儲,重新比較兩個相等的字符串,返回值為True,即兩個字符串相等
以上這篇Python判斷中文字符串是否相等的實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點(diǎn)
疑難解答
圖片精選