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

Posted Python学习

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

python基础扩展

python基础扩展(二)

常用操作

1.startswith(以什么开始) endswith(y)什么结束

s=‘taiWanw39dd‘
print(s.startswith(‘t‘)) #意思是‘以t开始’。返回值为:True
print(s.startswith(‘ta‘))#意思是‘以ta开始。返回值为:Ture
#利用切片法:
print(s.startswith(‘W‘,3,6))#意思是3到6的位置以W开头。

2.replace(替换)用法

msg=‘Jike马 很nb,Jike马是阿里巴巴创始人,Jike马长的很帅‘
msg1=msg.replace(‘Jike马‘,‘赵铁柱‘) #默认全部替换
print(msg1)#返回值为:‘赵铁柱 很nb,赵铁柱是阿里巴巴创始人,赵铁柱长的很帅‘
msg1=msg.replace(‘Jike马‘,‘赵铁柱‘,2) # 从左至有依次替换2个位置.
print(msg1)#返回值为:‘赵铁柱 很nb,赵铁柱是阿里巴巴创始人,Jike马长的很帅‘

3.#strip:空白:空格、 、

s1=‘  赵铁柱	‘
print(s1)
#打印结果:#结果显示 赵铁柱 前有两个空格,后面后一个tab(四个空格)
  赵铁柱    
s2=s1.strip()#去除空格
print(s2)
#打印结果:#结果显示  赵铁柱 前面两个空格 后面四个空格都去掉了
赵铁柱

strip去除指定的字符

s3=‘  rre铁柱qsd‘
s4=s3.strip(‘reqsd‘)
print(s4)
#打印结果:
铁柱
#去已经掉了rre和qsd

4、split 分割

#默认按照空格分隔,返回一个列表
#str--->list
s5=‘铁柱 铜柱 钢柱‘
k=s5.split()
print(k)
#指定分隔符
s5=‘铁柱:铜柱:钢柱‘
k=s5.split(‘:‘)
print(k)
##n个分隔符会分割出来的元素为n+1个
s6=‘:lily:mike:tony‘
print(s6.split(‘:‘))
#打印结果:
[‘‘, ‘lily‘, ‘mike‘, ‘tony‘]
##########还可以加入参数分割####
print(s6.split(‘:‘,2))
#打印结果:
[‘‘, ‘lily‘, ‘mike:tony‘]

5.join方法

  • join方法形式:‘ ‘.join()

  • join方法是把列表转换为 字符串,可以插入字符,对列表内容进行分割;但是join方法只能转换列表元素为字符串的列表。

  • #1
    a=[‘zhanagsan‘,‘lisi‘,‘wangwu‘]
    b=‘ ‘.join(a)
    print(b)
    print(type(b))
    输出结果:
    zhanagsan lisi wangwu
    <class ‘str‘>
    #2  ‘‘.join()方法,前面的单引号意思是分隔符,可以插入字符,可以把内容分割。
    b‘===‘.join(a)#
    print(b)
    #打印结果为:
    zhanagsan ===lisi ===wangwu
    # 3. join方法只能转换列表元素为字符串的列表。
    a=[1,2,3]
    b=‘ ===‘.join(a)
    print(b)
    print(type(b))
    #打印结果:报错
       b=‘ ===‘.join(a)
    TypeError: sequence item 0: expected str instance, int found
    

以上是关于python基础教程:startswith()和endswith()的用法的主要内容,如果未能解决你的问题,请参考以下文章

Python基础教程学习目录

Python一些不为人知的基础技巧

python基础数据类型整理

python3 基础 廖雪峰教程笔记-4

python3 基础 廖雪峰教程笔记-3

Python startswith()方法