python字符串查找函数的用法详解

yipeiwu_com6年前Python基础

python字符串查找函数的使用

打开Python开发工具IDLE,新建‘findstr.py'文件,并写代码如下:

s ='/ab/bx,.s'
print (s.find('/x'))

注意find是匹配子字符串,而不是匹配第一个字符

F5运行程序,打印出-1,代表没有找到‘/x'子字符串

修改代码如下,查找‘/b'子字符串

s ='/ab/bx,.s'
print (s.find('/b'))

F5运行程序,打印出3,代表‘/b'子字符串起始索引是3

find是从左到右查找,默认从起始位置0到最后,也可以赋值选择查找范围,

rfind是从右向左查找,修改代码如下:

s ='/ab/bx,.s'
print (s.find('/'))
print (s.rfind('/'))

F5运行程序,打印出左为起始位置的第一个‘/'的索引和右为起始位置的第一个‘/'的索引

还有一个查找子字符串位置的函数index,只不过在没有找到的情况下,不是返回-1而是抛出异常,修改代码如下:

s ='/ab/bx,.s'
print (s.index('/'))
print (s.index('/x'))

F5运行程序,打印信息如下图,查找到返回索引,没有查找到抛异常,同理

rindex也是从右向左查找

内容扩展

python查找字符串 函数find() 用法

sStr1 = 'abcdefg'
sStr2 = 'cde'
print sStr1.find(sStr2)

输出 2

意思是在sStr1字符里的第2位置找到了包含cde字符的字段

相关文章

python3.7 使用pymssql往sqlserver插入数据的方法

python3.7 使用pymssql往sqlserver插入数据 import pymssql conn = pymssql.connect(host='szs',server='...

Python双精度浮点数运算并分行显示操作示例

Python双精度浮点数运算并分行显示操作示例

本文实例讲述了Python双精度浮点数运算并分行显示操作。分享给大家供大家参考,具体如下: #coding=utf8 def doubleType(): ''''' Pyth...

对python for 文件指定行读写操作详解

1.os.mknod(“test.txt”) #创建空文件 2.fp = open(“test.txt”,w) #直接打开一个文件,如果文件不存在则创建文件 3.关于open 模式: 详...

Python开发之基于模板匹配的信用卡数字识别功能

Python开发之基于模板匹配的信用卡数字识别功能

环境介绍 Python 3.6 + OpenCV 3.4.1.15 原理介绍 首先,提取出模板中每一个数字的轮廓,再对信用卡图像进行处理,提取其中的数字部分,将该部分数字与模板进行匹...

python 实现将list转成字符串,中间用空格隔开

今天想输出一个list,中间用空格隔开。当然用循环可以搞定,但是这个也太不象python的风格了。 找了半天,网上都说使用" ".join(a)的办法,但是python3不支持,在sta...