tft每日頭條

 > 科技

 > python字符串計算方法

python字符串計算方法

科技 更新时间:2024-06-26 21:11:15

歡迎你來到站長在線的站長學堂學習Python知識,本文學習的是《在Python中使用len()函數計算字符串的長度詳解》。本知識點主要内容有:在Python中使用len()函數計算字符串在UTF-8編碼中的長度和使用len()函數計算字符串在GBK編碼中的長度。

python字符串計算方法(站長在線python精講在Python中使用len)1

在Python中,不同的字符采用的編碼不同,所占用的字節數也是不同的。要想計算字符串的長度,先了解字符所占用的字節數。

我們在字符串的編碼轉換中學過,漢字在GBK/GB2312中一個中文字符,占兩個字節。在UTF-8中一般占3個字節(或者4個字節)。

在Python中,提供了len()函數計算字符串的長度,其語法如下:

len(string)

其中,string用于指定要進行長度統計的字符串。

例如,定義一個字符串,内容為“Python是當下最熱門的編程語言”,然後應用len()函數計算該字符串的長度,代碼如下:

str = 'Python是當下最熱門的編程語言' # 定義字符串 a = len(str) # 計算字符串的長度 print(a) # 輸出字符串的長度

運行結果為:

17 >>>

從上面的結果可以看出,在默認的情況下,通過len()函數計算字符串的長度時,不區分英文,數字和漢字,所有的字符都認為是一個字符。

但是在實際開發中,需要獲取字符串實際所占用的字節數。如果采用gbk或者gb2312編碼,則一個漢字占用兩個字節;采用utf-8編碼,則一個漢字占用3個字節。這時,我們可以通過encode()方法進行編碼後再進行獲取。

1、采用默認編碼UTF-8編碼時,獲取字符串“Python是當下最熱門的編程語言”的長度,代碼為:

str = 'Python是當下最熱門的編程語言' # 定義字符串 a = len(str.encode('utf-8')) # 計算utf-8編碼的字符串的長度 print(a) # 輸出字符串的長度

運行結果為:

39 >>>

為什麼是39呢?是因為在utf-8的編碼中,一個漢字占3個字節,一共11個漢字就是33個字節,加上6個英文字母占6個字節,就是39個字節了。

下面我們在來使用GBK編碼的長度時多少?

2、用默認編碼GBK編碼時,獲取字符串“Python是當下最熱門的編程語言”的長度,代碼為:

str = 'Python是當下最熱門的編程語言' # 定義字符串 a = len(str.encode('gbk')) # 計算gbk編碼的字符串的長度 print(a) # 輸出字符串的長度

運行結果為:

28 >>>

為什麼是28呢?因為在GBK的編碼中,一個漢字占2個字節,一共11個漢字占22個字節,加上6個英文字母占6個字節,就是28個字節了。

站長在線提醒您,因為UTF-8編碼是Python3中的默認編碼,在進行計算編碼時,可以不用輸入。即下面代碼也是對的:

str = 'Python是當下最熱門的編程語言' # 定義字符串 a = len(str.encode()) # 計算默認編碼utf-8編碼的字符串的長度 print(a) # 輸出字符串的長度

運行結果為:

39 >>>

到此為止,《在Python中使用len()函數計算字符串的長度詳解》就講解完畢了,我們下一個知識點為《在Python中截取字符串(切片)詳解》。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved