一文詳解Python中常用的初等函數(shù)(內(nèi)置函數(shù))
該文章針對(duì)性比較強(qiáng),只針對(duì)筆者的知識(shí)水平制定的,中間可能有些函數(shù)不會(huì)記載。
Python版本:Python3.8.10
【islower】
該函數(shù)用于判斷一個(gè)字符串是否為一個(gè)全部都是小寫(xiě)的字符串
返回值為bool
類(lèi)型
>> a = "jasdflkas" >> b = "aklsdfkG" >> a.islower() True >> b.islower() False
其中,a中所有的元素都是小寫(xiě)的,b中有一個(gè)元素是大寫(xiě)的。
【isupper】
該函數(shù)用于判斷一個(gè)字符串是否全部都是大寫(xiě)
用法與上面相同,筆者不過(guò)多敘述。
【isspace】
該函數(shù)用于判斷字符串是否是只由空格組成,
返回值為bool
>> a = " " >> b = " q" >> a.isspace() True >> b.isspace() False
判斷的長(zhǎng)度和字符串的長(zhǎng)度和大小沒(méi)有關(guān)系。
【pow】
該函數(shù)和C語(yǔ)言中的用法是相同的,用來(lái)計(jì)算一個(gè)數(shù)字的冪函數(shù)。
返回值為計(jì)算的數(shù)據(jù)對(duì)應(yīng)的類(lèi)型
>> pow(3, 2) 9 # 3的平方是9 >> pow(3,3) 27 # 3的三次方是27
前面填入要計(jì)算的數(shù)據(jù),后面填入要計(jì)算的次數(shù)。
【ord】
該函數(shù)用于計(jì)算字符中對(duì)應(yīng)的ASCII碼,多用于數(shù)據(jù)中的移位操作。
>> a = "a" >> b = "abc" >> print(ord(a)) 97 >> print(ord(b)) TypeError: ord() expected a character, but string of length 3 found
從這里我們知道,ord
只能接收長(zhǎng)度為1的字符串,如果是多個(gè)字符組成的字符串會(huì)導(dǎo)致報(bào)錯(cuò)。
【chr】
該函數(shù)用于將ASCII碼轉(zhuǎn)為其對(duì)應(yīng)的字符,用法與上文中相同,筆者在這里僅展示使用的例子,不過(guò)多解釋。
>> b = 97 >> chr(b) a # 在ASCII碼中,97號(hào)對(duì)應(yīng)的是a
【find】
查詢(xún)函數(shù),用來(lái)查找字符串中是否包含一個(gè)數(shù)據(jù)。
需要的輸入:
要查找的字符串
目標(biāo)字符串(也可以是一個(gè)字符串中的切片)
>> a = "lasjflk" >> a.find("jf") 3 >> a.find("f") 4
find中返回出來(lái)的是一個(gè)整數(shù),是這個(gè)字符的下標(biāo)(如果是字符串的話(huà)將會(huì)返回字符串的頭字符的下標(biāo))
如果沒(méi)有找到結(jié)果的話(huà),返回值為-1
【strip】
該函數(shù)可以刪除字符串中左右兩邊的空格
>> a = " /t/n hello world/t /n" >> a.sprit() hello world
其中的空格不會(huì)被刪除,但是兩邊的空格都被刪除了。
我們也可以使用這個(gè)函數(shù)刪除指定的字符(完全刪除)
>> a = "hello world" >> a.sprit("lh") heo word
該函數(shù)中的輸入值中順序沒(méi)有區(qū)別。
也就是這里輸入的是hl的的結(jié)果與這里的結(jié)果是相同的。
【lstrip】
該函數(shù)的用法和strip
的用法是相同的,不過(guò)就是去除空格的時(shí)候兩者有一些差別
>> a = " hello world " >> a.lstrip() hello world # 末尾有兩個(gè)空格
使用該函數(shù)用于去除字符串開(kāi)頭的空格(也就是字符串左邊的空格)
【rstrip】
同理,用法是相同的,不過(guò)區(qū)別就是這個(gè)去除的是右邊的空格
。
這邊將不給出用法,該與上者用法相同。
【split】
可以將字符串按照某一個(gè)字符分割開(kāi)來(lái),輸出是是一個(gè)列表。
>> a = "asjfl" >> a.split(j) ["as", "fl"]
其中包含的是被分割以后的函數(shù),是不包含指定分割的那個(gè)字符的。
這樣我們就可以提出一個(gè)非常好的輸入
a = list(map(int, input().split()))
我們這里嘗試輸入一下
>> 1 2 3 4 >> a [1, 2, 3, 4]
【isalnum】
該函數(shù)判斷字符串中是否都是數(shù)字和字母,沒(méi)有其他的符號(hào)
>> a = "aaioqwei0" >> b = "oasl0-9233" >> a.isalnum() True >> a.isalnum() False
a中的字符串中只含有數(shù)字和字母,b中包含了一個(gè)其他的符號(hào)
因此a 的返回值為True
;b的返回值為False
【isalpha】
該函數(shù)有用于判斷字符串中是否全是字符(不包括標(biāo)點(diǎn)符號(hào))
>> a = "aa" >> b = "aa0" >> c = "aa," >> a.isalpha() True >> b.isalpha() False >> c.isalpha() False
- a中不包含其他的字符,所以輸出為
True
- b中包含了一個(gè)數(shù)字,所以輸出為
False
- c中包含了一個(gè)標(biāo)點(diǎn)符號(hào),所以輸出為
False
【isdigit】
該函數(shù)用于判斷字符中是否全是數(shù)字
用法與上者相同,所以筆者在這里不做出過(guò)多的敘述。
【lower】
該函數(shù)可以將字符串中的數(shù)據(jù)全部改為小寫(xiě)(不管大小寫(xiě))
>> a = "Hello World" >> b = "hello, Python" >> a.lower() hello world >> b.lower() hello, python
b中就算是有標(biāo)點(diǎn)符號(hào)也是可以正常使用的。
【upper】
該函數(shù)和lower
的用法是相同的。筆者這里不作過(guò)多的敘述。
【count】
該函數(shù)用于統(tǒng)計(jì)一個(gè)元素在列表中的出現(xiàn)的次數(shù)(也就是重復(fù)的次數(shù)),返回值是一個(gè)整型。
>> a = "aasbssa" >> a.count("a") 3 >> a.count("A") 0
count
中的查找也是區(qū)分大小寫(xiě)的。
【startwith】
判斷字符串是否是從一個(gè)字符開(kāi)始的,輸出為bool
類(lèi)型。
>> a = "aaan" >> a.startwith("a") True
這里的使用也是區(qū)分大小寫(xiě)的。
【endwith】
判斷一個(gè)字符的末尾是否是那個(gè)指定的字符,輸出類(lèi)型為bool
類(lèi)型
使用的例子與上文中的類(lèi)似,這里筆者不再舉例。
【extend】
用法類(lèi)似于append
,但是就算是輸入的是一個(gè)字符串,也會(huì)將字符串掰開(kāi)輸入到列表中。
>> a = ["a", "a", "b"] >> b = "gg" >> a.extend(b) >> a ['a', 'a', 'b', 'g', 'g']
這里輸入的不是"gg"
,而是變成了"g", "g"
兩個(gè)元素。
【remove】
將指定元素的字符、字符串從列表中刪除,但是只會(huì)刪除該字段或該字符第一次出現(xiàn)的時(shí)候。
該函數(shù)只能給列表、集合使用。(筆者這里只是用列表展示其作用)
>> a = ["a", "b", "a", "c"] >> a.remove("a") ["b", "a", "c"]
該函數(shù)只移除了最前面的那個(gè)字符,后面的不會(huì)動(dòng)。
remove
沒(méi)有返回值,該功能類(lèi)似于高級(jí)版的del
函數(shù)
【isinstance】
該函數(shù)用于判斷一個(gè)函數(shù)是否是一個(gè)指定類(lèi)型。
這個(gè)函數(shù)接受一個(gè)變量類(lèi)型(object
),和一個(gè)類(lèi)型變量(可以是一個(gè)類(lèi)型變量,也可以是一個(gè)由類(lèi)型變量組成的元組)
>> a = "hello" >> b = 10 >> isinstance(a, int) False >> isinstance(a, str) True >> isinstance(b, (int, str)) True
兩者輸入中,中間使用逗號(hào)隔開(kāi),返回值為bool類(lèi)型。
【join】
這個(gè)函數(shù)就是split
的逆操作。
split
函數(shù)是根據(jù)一個(gè)特定的字符將長(zhǎng)字符串分割開(kāi)來(lái),join
是將幾個(gè)字符串根據(jù)一個(gè)特定的規(guī)則合并起來(lái)。
這個(gè)就是類(lèi)似于一個(gè)字符串連接函數(shù)
join
也可以對(duì)列表進(jìn)行操作,將列表中的元素連接成為一個(gè)字符串
>> a = ["hello", "world"] >> " ".join(a) hello world
可以看到,函數(shù)將列表中的元素連接成了一個(gè)字符串(中間連接符號(hào)是空格)
【any】
該函數(shù)用來(lái)判斷可迭代對(duì)象中,是否全部都是False
如果其中有一項(xiàng)為T(mén)rue的話(huà)就直接返回True
# any() 使用示例 # 1. 列表中是否有任意一個(gè)為T(mén)rue print(any([True, False, False])) # 輸出: True print(any([False, False, False])) # 輸出: False # 2. 數(shù)字列表中是否有大于5的數(shù) numbers = [1, 3, 7, 4, 2] print(any(num > 5 for num in numbers)) # 輸出: True # 3. 字符串列表中是否有以'a'開(kāi)頭的 words = ['hello', 'apple', 'world'] print(any(word.startswith('a') for word in words)) # 輸出: True # 4. 空迭代器 print(any([])) # 輸出: False
也就是查找可迭代對(duì)象中的值是否含有True
,如果至少有一個(gè)的話(huà)返回True
,沒(méi)有的話(huà)才是False
如果是空值的話(huà),則其中沒(méi)有值,也就是沒(méi)有True
,any
函數(shù)返回的就是False
了
【all】
用來(lái)判斷可迭代對(duì)象中,是否全是True
,如果有一個(gè)不是話(huà)返回False
# all() 使用示例 # 1. 列表中是否全部為T(mén)rue print(all([True, True, True])) # 輸出: True print(all([True, False, True])) # 輸出: False # 2. 數(shù)字列表中是否全部大于0 numbers = [1, 2, 3, 4, 5] print(all(num > 0 for num in numbers)) # 輸出: True # 3. 字符串列表中是否都是小寫(xiě) words = ['hello', 'world', 'Python'] print(all(word.islower() for word in words)) # 輸出: False # 4. 空迭代器 print(all([])) # 輸出: True
也就是查找其中是否有反例False
,如果含有的話(huà)直接返回False
空值中沒(méi)有反例False
,因此函數(shù)返回的就是True
了
總結(jié)
到此這篇關(guān)于Python中常用的初等函數(shù)(內(nèi)置函數(shù))的文章就介紹到這了,更多相關(guān)Python內(nèi)置函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Django框架的使用教程路由請(qǐng)求響應(yīng)的方法
這篇文章主要介紹了Django框架的使用教程路由請(qǐng)求響應(yīng)的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-07-07Python?Pandas讀取csv/tsv文件(read_csv,read_table)的區(qū)別
這篇文章主要給大家介紹了關(guān)于Python?Pandas讀取csv/tsv文件(read_csv,read_table)區(qū)別的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Pandas具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-01-01Python實(shí)現(xiàn)Excel文件的合并(以新冠疫情數(shù)據(jù)為例)
這篇將以新冠疫情數(shù)據(jù)為例,詳細(xì)介紹了如何利用Python實(shí)現(xiàn)合并Excel文件,文中的示例代碼講解詳細(xì),感興趣的可以了解一下2022-03-03