1. 程式人生 > >Python判斷中文字串是否相等

Python判斷中文字串是否相等

Python判斷兩個相等的中文字串為false,將兩個待比較的字串都把unicode編碼設為‘utf-8’也不能解決問題,具體原因如下:
1.首先檢視待比較兩個字串的編碼格式 ,使用命令

import chardet
......
string_code = chardet.detect(string_word)

比較兩個字串的編碼結果,如下圖所示
這裡寫圖片描述
這裡寫圖片描述
一個編碼格式為‘UTF-8-SIG’,另一個編碼格式為‘utf-8’,兩個字串的編碼格式不同,所以比較的結果為不相等
出現編碼為‘UTF-8-SIG’是因為檔案在儲存的時候以UTF-8格式編碼儲存,將檔案以UTF-8無BOM格式編碼儲存,則讀取出的資料編碼格式自然變為‘utf-8’
2.檔案以UTF-8無BOM格式編碼重新儲存,重新比較兩個相等的字串,返回值為True,即兩個字串相等

相關推薦

Python判斷中文字串是否相等

Python判斷兩個相等的中文字串為false,將兩個待比較的字串都把unicode編碼設為‘utf-8’也不能解決問題,具體原因如下: 1.首先檢視待比較兩個字串的編碼格式 ,使用命令 impor

python 判斷列表字串元素首尾字元是否相同

  def match_words(words): ctr = 0 for word in words: if len(word) > 1 and word[0] == word[-1]: ctr += 1 return ctr

python判斷一個字串是否為另一字串的子串的幾種方法

字串型別是Python裡面最常見的型別。在處理字串的時候經常會用到string模組,string模組的方法是在Python1.6裡面新增進來的。本文中主要以string模組的方法來判斷一個字串是否為另一字串的子串。 (一)首先介紹一種最簡單的方法:成員操作 in ss=r

如何利用Python判斷一個字串是合法ip

這是京東2018年校招面試,面試官問的問題,當時現場我用的正則表示式,但是由於正則表示式忘記不少,,,於是該題目沒有完全解決 回來自己又重新思考了一下,這個問題,覺得可以這樣判斷 #!/usr/bin/python import os,sys def check_ip(

python包含中文字串長度

一箇中文utf8編碼後是佔3個字元,所以求長度的函式可以這樣寫 def str_len(str): try: row_l=len(str) utf8_l=len(str.encode('utf-8')) return

Python判斷一個字串是否包含子串的幾種方法

1.使用成員操作符 in >>> s='nihao,shijie' >>> t='nihao' >>> result = t in s >

java 判斷中文字串長度

/** * 獲取字串的長度,中文佔一個字元,英文數字佔半個字元 * * @param value 指定的字串 * @return 字串的長度 *

java判斷中文字串長度

話不多說,上程式碼: /** * 獲取字串的長度,如果有中文,則每個中文字元計為2位 * @param value 指定的字串 * @return 字串的長度

python判斷字串包含中文、數字、英文

1.判斷字串只包含中文:#encoding=utf-8 import sys reload(sys) sys.setdefaultencoding('utf8') def check_contain_chinese(check_str): flag = True

python 判斷字串中是否只有中文字元

python中的encode和decode: 首先,在python中字串的表示是 用unicode編碼。所以在做編碼轉換時,通常要以unicode作為中間編碼。 decode的作用是將其他編碼的字串轉換成unicode編碼,比如 a.decode('utf-8')

python判斷字串是否是中文

def is_Chinese(word): for ch in word: if '\u4e00' <= ch <= '\u9fff': re

js怎麼判斷兩個字串是否相等

第一種、 <%     String bg=request.getParameter("bg");         if(bg==null||"".equals(bg)){   

Shell指令碼 字串大小比較 字串是否相等比較 字串是否為空判斷

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

[轉]Python判斷字串是否為字母或者數字

str_1 = "123" str_2 = "Abc" str_3 = "123Abc" #用isdigit函式判斷是否數字 print(str_1.isdigit()) Ture print(str_2.isdigit()) False print(str_3.isdigit()) False #

python基礎之字串為空或空格判斷

1、使用字串長度判斷     len(s) ==0  則字串為空     if len(username) ==0 or len(password) == 0: #判斷輸入的使用者名稱或密碼是否為空 print('使用者名

判斷兩個字串是否相等

將兩個字串比較是否相等 要求:給定兩個字串s1,s2並賦值,判斷兩個字串是否相等,若相等則返回0,否則返回1。 包含的引用函式 strlen(s1)取字串的長度 方案一:使用陣列表示,取兩個陣列的長度,k為較長陣列的長度,兩個陣列依次比較字串裡面的內容,如果相等則j+1,比較

(Java)如何判斷字串是否相等以及比較字串的大小

在Java中,經常需要比較兩個字串,這裡總結一下。 1.判斷字串是否相等 在Java中,可以使用“==”來進行判斷字串是否相等。 示例: String s1="Hello"; String s2="Hello"; //輸出返回值 System.out.prin

JAVA如何判斷兩個字串是否相等

1、java中字串的比較是==比較引用,equals 比較值 so我們經常習慣性的寫上if(str1==str2),這種寫法在java中可能會帶來問題  example1: String a="abc";String b="abc", 那麼a==b將返回true。因為在java

python中的==和is的使用(中文字串與英文字串有區別)

1.python中的==比較的是物件的值,而非物件本身,例:(這裡比較了數字、英文字串、中文字串、表) 從這看出==比較的只是值,而非物件本身 2.python中的is和is not判斷是否為同一物件(其實是根據內建函式id取得物件的唯一標識去判斷的),例:

中文字串判斷

public class EnZhDistinguish { public static void main(String[] args) { String s = "aa中