python 中startswith()和endswith() 方法


 startswith()方法


Python startswith() 方法用於檢查字符串是否是以指定子字符串開頭
如果是則返回 True,否則返回 False。如果參數 beg 和 end 指定值,則在指定范圍內檢查。
str.startswith(str, beg=0,end=len(string));


參數
str         --檢測的字符串。
strbeg    --可選參數用於設置字符串檢測的起始位置。
strend    --可選參數用於設置字符串檢測的結束位置。


返回值
如果檢測到字符串則返回True,否則返回False。

常用環境:用於IF判斷

#!/usr/local/bin/python
# coding=utf-8
listsql = 'select * from ifrs.indiv_info'
def isSelect(sql):
    chsql = sql.upper().strip()
    if not chsql.startswith("SELECT "):
        return False
    return True

print isSelect(listsql)
[root@bigdata-poc-shtz-3 zw]# python h.py
True

 



endswith()方法

作用:判斷字符串是否以指定字符或子字符串結尾,常用於判斷文件類型

一、函數說明
語法:string.endswith(str, beg=[0,end=len(string)])
      string[beg:end].endswith(str)

參數說明:
string:   --被檢測的字符串
str:      --指定的字符或者子字符串(可以使用元組,會逐一匹配)
beg:      --設置字符串檢測的起始位置(可選,從左數起)
end:      --設置字符串檢測的結束位置(可選,從左數起)
如果存在參數 beg 和 end,則在指定范圍內檢查,否則在整個字符串中檢查  
 
返回值:
如果檢測到字符串,則返回True,否則返回False。

解析:如果字符串string是以str結束,則返回True,否則返回False

注:會認為空字符為真

python
>>> endsql = 'select * from ifrs.indiv_info'
>>> endsql.endswith('info')
True
>>> endsql.endswith('info',3)
True
>>>
>>> endsql.endswith('info',3,10)
False
>>> endsql.endswith('info',25,29)
True
>>> endsql.endswith('')
True


常用環境:用於判斷文件類型(比如圖片,可執行文件)

>>> f = 'a.txt'
>>> if f.endswith(('.txt')):
...  print '%s is a txt' %f
... else:
...  print '%s is not a txt' %f
...
a.txt is a txt

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM