字符串中會(huì)包含多種類型的數(shù)據(jù),像整數(shù)、大小寫字母、符號(hào)和轉(zhuǎn)義字符。我們要判斷字符串中是否包含相應(yīng)數(shù)據(jù)類型的字符,就需要借助測(cè)試方法。
常用的測(cè)試方法有isalnum()、isalpha()、isdigit ()、islower()、isupper()、isspace()。
下面我們一一進(jìn)行學(xué)習(xí)。
1. isalnum()方法
isalnum()方法用來判斷字符串中是否只包含字母或數(shù)字,并且長(zhǎng)度要大于0,滿足的話就返回True,否則返回False。
我們來看個(gè)例子:
>>> my_str 'www.sztianhecheng.cn' >>> my_str.isalnum()#判斷是否只包含字母和數(shù)字 False
因?yàn)閙y_str中不僅僅包含字母和數(shù)字,因此返回Flase,再看一個(gè)例子:
>>> s = 'dotcpp123456' >>> s.isalnum() True
s字符串中只包含字母和數(shù)字,因此返回True。
2. isalpha()方法
isalpha()方法用來判斷字符串中是否只包含字母,并且長(zhǎng)度大于0,滿足的話就返回True,否則返回False。
我們來看個(gè)例子:
>>> my_str 'www.sztianhecheng.cn' >>> my_str.isalpha()#判斷是否只包含字母 False
因?yàn)閙y_str中不僅僅包含字母,因此返回Flase,再看一個(gè)例子:
>>> s = 'dotcpp' >>> s.isalpha() True
s字符串中只包含字母,因此返回True。
3. isdigit()方法
isdigit()方法用來判斷字符串中是否只包含數(shù)字,并且長(zhǎng)度大于0,滿足的話就返回True,否則返回False。
>>> my_string '99+1=100' >>> my_str.isdigit()#判斷是否只包含數(shù)字 False
因?yàn)閙y_string中不僅僅包含數(shù)字,因此返回Flase,再看一個(gè)例子:
>>> s = '1234567' >>> s.isdigit() True
4. islower()方法和isupper()方法
這兩種方法分別用來判斷字符串中是否只包含小寫字母和大寫字母,使用方法和上面幾種方法一致,我們來舉例看一下:
>>> s = 'ABCabc'#字符串s包含大寫字母和小寫字母 >>> s.islower() False >>> s.isupper() False >>> s = 'abc'#s字符串只包含小寫字母 >>> s.islower() True >>> s = 'ABC'#s字符串只包含大寫字母 >>> s.isupper() True
5. isspace()方法
isspace()方法用于判斷字符串是否只包含空白字符(空格、換行(\n)和制表符(\t)),并且長(zhǎng)度大于0,滿足條件返回True,否則返回False。
看下面的例子:
>>> my_str = ' \n \t '#其中包含五個(gè)字符,三個(gè)空格,一個(gè)換行,一個(gè)制表符 >>> len(my_str)#看一下長(zhǎng)度 5 >>> my_str ' \n \t ' >>> print(my_str) >>> my_str.isspace()#判斷是否為空白字符 True
打印結(jié)果可以看出my_str屬于一個(gè)空白字符串,判斷正確。
6. 總結(jié)
這幾個(gè)方法的使用比較類似,都是在測(cè)試通過之后返回True,而錯(cuò)誤則返回False,我們通常會(huì)使用if語句結(jié)合使用,當(dāng)if語句成立之后,即判斷字符串中所包含內(nèi)容成立之后再執(zhí)行相關(guān)語句,如果判斷為False則執(zhí)行另外語句。大家可以在下面自己使用if語句去練習(xí)使用一下上面的幾種方法。
7.習(xí)題題解
1035 | [編程入門]自定義函數(shù)之字符類型統(tǒng)計(jì) |
2002 | 計(jì)算數(shù)字個(gè)數(shù) |
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競(jìng)賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:
一點(diǎn)編程也不會(huì)寫的:零基礎(chǔ)C語言學(xué)練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程
從零到寫出一個(gè)爬蟲的Python編程課程
只會(huì)語法寫不出代碼?手把手帶你寫100個(gè)編程真題的編程百練課程
信息學(xué)奧賽或C++選手的 必學(xué)C++課程
藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競(jìng)賽課入門課程
手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程