做文字處理的時候經常要判斷乙個文字有沒有以乙個子串開始,或者結束。python為此提供了兩個函式:
s.startswith(prefix[, start[, end]]) -> bool
如果字串s以prefix開始,返回true,否則返回false。start和end是兩個可以預設的引數。分別是開始比較的位置和結束比較的位置。這個函式也可以寫成s[start:end].startswith(prefix)。
s.endswith(suffix[, start[, end]]) -> bool
如果字串s以suffix結束,返回true,否者返回false。與startswith類似,這個函式也可以寫成s[start:end].endswith(suffix)。start和end仍然是從左數起。
做個例項:
>>> 「fish」.startswith(」fi」)
true
>>> 「fish」.startswith(」fi」,1)
false
>>> 「fish」.endswith(」sh」)
true
>>> 「fish」.endswith(」sh」,3)
false
python的這兩個函式有個特別的地方——它的prefix和suffix引數不僅可以是字串,還都可以是乙個元組。只要其中乙個成立,就返回true,也就是一種「或」的關係。比如:
print 「%s是乙個檔案」%filename
上面兩行**根據副檔名是否是「gif」、「jpg」或「tiff」之一來決定檔案是不是檔案。這個**也可以寫成:
print 「%s是乙個檔案」%filename
不過這樣比較麻煩。值得注意的是,不熟悉python的朋友可能會忘了元組周圍的括號。
Python一些內建函式
dir obj 顯示物件的屬性,如果沒有提供引數,則顯示全域性變數的名字 help obj 顯示物件的文件字串,如果沒有提供任何引數,進入互動式幫助 len obj 返回物件長度 open fn,mode 以mode方式開啟乙個檔名為fn的檔案 range start,stop step 返回乙個整...
Python一些內建函式
來判斷乙個物件是否是乙個已知的型別。語法 isinstance object,classinfo bool 引數 返回值 isinstance 與 type 區別 示例 classa pass class b a pass isinstance a a true type a a true isin...
python的一些內建函式
python並非我的第一語言,所以之前看python 的時候遇到過一些內建函式的時候,總是以物件導向不看細節的心情大概理解用法之後就置之不理了。但是內建函式實在太短小精悍,很好用,所以總是不可避免的要遇到,所以還是下決心好好分析一下。我現在遇到過的有幾種 filter,map,reduce,lamb...