python字符串的操作

字符串的检索

1:分割字符串

函数:split()
语法:str.split(sep,eaxsplit)
说明:str是需要分割的字符串,sep,用于指定分隔符,可以包含多个分隔符,默认值为None 即所有的空字符包含(空格,换行符\n,制表符\t,等)
返回值是一个列表。

str1  = 'ming ri xue yuan guan wang >>> www.mingrisort.com'
print '原字符串 %s' %str1
list1 = str1.split()  # 默认分割
list2 = str1.split('>>>')  # 多个字符进行分割
list3 = str1.split(' ')  # 用空格分割 并且只分割前四个
list4 = str1.split('.') # 以点分割
list5 = str1.split('>') # 以>进行分割
print str(list1) + '\n' + str(list2) + '\n' + str(list3) + '\n' + str(list4) + '\n' + str(list5)
# 原字符串 ming ri xue yuan guan wang >>> www.mingrisort.com
# ['ming', 'ri', 'xue', 'yuan', 'guan', 'wang', '>>>', 'www.mingrisort.com']
# ['ming ri xue yuan guan wang ', ' www.mingrisort.com']
# ['ming', 'ri', 'xue', 'yuan', 'guan', 'wang', '>>>', 'www.mingrisort.com']
# ['ming ri xue yuan guan wang >>> www', 'mingrisort', 'com']
# ['ming ri xue yuan guan wang ', '', '', ' www.mingrisort.com']

2:检索字符串

这里介绍五个方法,conut() find() index() startswith() endswith()
后续会有详细的介绍

一:count()函数。

作用:统计指定字符在另一个字符串出现的次数。
语法:str.count(sub[,start[,end]])
说明:

  • str:原字符串
  • sub:要检索的子字符串
  • start:可选参数,检索开始位置,不传的话默认是从头开始
  • end:可选参数,检索结束位置
str1 = '@xiaomi @apple @huawei'
print str1 # @xiaomi @apple @huawei
print str1.count('@') # 3

二:find()函数

作用:用于查询字符串是否存在于另一个字符串中,如果不存在返回 -1 存在的话返回第一次出现这个字符的位置
语法:str.find(sub[,start[,end]])
说明:

  • str:原字符串
  • sub:要检索的子字符串
  • start:可选参数,检索开始位置,不传的话默认是从头开始
  • end:可选参数,检索结束位置
str1 = '@xiaomi @apple @huawei'
print str1 # @xiaomi @apple @huawei
print str1.find('@') # 0

拓展:find()函数是从左向右查询,还有一个rfind()函数是从右向左查询

三:index()

和find()功能是一样的,之不过查询没有符合条件不返回-1直接报错。
语法:str.index(sub[,start[,end]])
说明:

  • str:原字符串
  • sub:要检索的子字符串
  • start:可选参数,检索开始位置,不传的话默认是从头开始
  • end:可选参数,检索结束位置
str1 = '@xiaomi @apple @huawei'
print str1 # @xiaomi @apple @huawei
print str1.index('@') # 0 这里要是ba@换成"y"程序会直接报错

拓展这个也提供rindex()方法,是也是从右向左查询的。

四:startswith()函数

作用:用于检查字符是否存在某个字符串的开头位置,存在返回True,不存在返回False
语法:str.startswith(sub[,start[,end]])
说明:

  • str:原字符串
  • sub:要检索的子字符串
  • start:可选参数,检索开始位置,不传的话默认是从头开始
  • end:可选参数,检索结束位置
str1 = '@xiaomi @apple @huawei'
print str1 # @xiaomi @apple @huawei
print str1.startswith('@') # True

拓展:endswith()函数和startswith()函数是相反的,是查询某个字符的结尾是否为,某个字符,语法和endswith()相同。

我是阿旺,虽然我走的很慢,但是我从未停下脚步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值