1. 程式人生 > 其它 >python基礎教程:startswith()和endswith()的用法

python基礎教程:startswith()和endswith()的用法

startswith()方法

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

引數

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

返回值

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

常用環境:用於IF判斷

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學習交流群:531509025
尋找有志同道合的小夥伴,互幫互助,群裡還有不錯的視訊學習教程和PDF電子書!
'''
>>> 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