Python中,要想知道一個(gè)字符串有多少個(gè)字符(獲得字符串長(zhǎng)度),或者一個(gè)字符串占用多少個(gè)字節(jié),可以使用len()函數(shù)。
成都創(chuàng)新互聯(lián)專注于濱城企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城網(wǎng)站制作。濱城網(wǎng)站建設(shè)公司,為濱城等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
語(yǔ)法格式:
len(string)
string 用于指定要進(jìn)行長(zhǎng)度統(tǒng)計(jì)的字符串
示例:
a = 'www.baidu.com'
print(len(a))
輸出
13
在 Python 中,不同的字符所占的字節(jié)數(shù)不同,數(shù)字、英文字母、小數(shù)點(diǎn)、下劃線以及空格,各占一個(gè)字節(jié),而一個(gè)漢字可能占 2~4 個(gè)字節(jié),具體占多少個(gè),取決于采用的編碼方式。例如,漢字在 GBK/GB2312 編碼中占用 2 個(gè)字節(jié),而在 UTF-8 編碼中一般占用 3 個(gè)字節(jié)。
以 UTF-8 編碼為例,字符串“人生苦短,我用Python”所占用的字節(jié)數(shù)如圖 1 所示。
我們可以通過(guò)使用 encode() 方法,將字符串進(jìn)行編碼后再獲取它的字節(jié)數(shù)。例如,采用 UTF-8 編碼方式,計(jì)算“人生苦短,我用Python”的字節(jié)數(shù),可以執(zhí)行如下代碼:
示例:
str1 = '人生苦短,我用Python'
print(len(str1.encode()))
輸出
27
因?yàn)闈h字加中文標(biāo)點(diǎn)符號(hào)共 7 個(gè),占 21 個(gè)字節(jié),而英文字母和英文的標(biāo)點(diǎn)符號(hào)占 6 個(gè)字節(jié),一共占用 27 個(gè)字節(jié)。
同理,如果要獲取采用 GBK 編碼的字符串的長(zhǎng)度,可以執(zhí)行如下代碼:
str1 = '人生苦短,我用Python'
print(len(str1.encode('gbk')))
輸出
20
join()方法:合并字符串
使用 join() 方法合并字符串時(shí),它會(huì)將列表(或元組)中多個(gè)字符串采用固定的分隔符連接在一起。例如字符串“www.baidu.com” 就可以看做是通過(guò)分隔符 “.” 將 ['www','baidu','com']列表合并為一個(gè)字符串的結(jié)果。
語(yǔ)法格式:
newstr = str.join(iterable)
此方法中各參數(shù)的含義如下:
示例一:
#Python學(xué)習(xí)交流群:
list = ['www', 'baidu', 'com']
str = '.'.join(list)
print(str)
輸出
www.baidu.com
示例二:
dir = '', 'usr', 'bin', 'env'
print(type(dir))
str1 = '/'.join(dir)
print(str1)
輸出
/usr/bin/env