python中str的find()
今天学习语法的时候发现字符串自带函数find和操作符in功能十分近似,几乎一模一样
if 'a' in name: print 'Yes, it contains the string "a"'
if name.find('war') != -1: print 'Yes, it contains the string "war"'
我就想,不可能出现完全一样功能的函数吧,要不意义何在?果不其然,经查证find()是返回查询字符串第一个字符在被查询字符串中第一次出现的位置
举个栗子:
按照一般理解:abc.find('')返回的要么是0要么是1
abc = "qwertyuiopqwertyuiop"
if abc.find('yui'):#判断是否包含yui字符串
print("Yes")
else:
print("No")
结果:

一切正常
但如果:
abc = "qwertyuiopqwertyuiop"
if abc.find('abc'):#判断是否包含yui字符串
print("Yes")
else:
print("No")
你会发现结果还是:

这是因为find()若找不到对应字符串则返回-1
正确的判断语句应该是:
if abc.find("abc") != -1
...
...
而且find()若找到对应字符串返回的也不是1,那是什么呢? 之前有提到,返回的是查询字符串在被查询字符串中第一次出现的位置
举个栗子:
abc = 'qwertyuiopqwertyuiop'
print(abc.find('yui'))
结果:

打印的是y在字符串‘qwertyuiopqwertyuiop’中第一次出现的位置,注意python从0开始
python中str的find()的更多相关文章
- Python中str()与repr()函数的区别——repr() 的输出追求明确性,除了对象内容,还需要展示出对象的数据类型信息,适合开发和调试阶段使用
Python中str()与repr()函数的区别 from:https://www.jianshu.com/p/2a41315ca47e 在 Python 中要将某一类型的变量或者常量转换为字符串对象 ...
- Python中str()与repr()函数的区别
在 Python 中要将某一类型的变量或者常量转换为字符串对象通常有两种方法,即str()或者 repr() . >>> a = 10 >>> type(str(a ...
- Python中str()和repr()函数的区别
在 Python 中要将某一类型的变量或者常量转换为字符串对象通常有两种方法,即 str() 或者 repr() . 区别与使用函数str() 用于将值转化为适于人阅读的形式,而repr() 转化为供 ...
- python中str的常用方法汇总(1)
a = 'strABC' # Strabc : 首字母大写,其他全部小写 b = a.capitalize() print(b) # STRABC : 全部大写 c = a.upper() print ...
- Python中str、list、numpy分片操作
在Python里,像字符串(str).列表(list).元组(tupple)和这类序列类型都支持切片操作 对对象切片,s是一个字符串,可以通过类似数组索引的方式获取字符串中的字符,同时也可以用s[a: ...
- python中str()和repr()的区别
>>> s = 'Hello, world.' >>> str(s) 'Hello, world.' >>> repr(s) "'Hel ...
- python中str常用操作
1. 字符串的操作 字符串的连接操作 符号: + 格式:str1 + str2 例如:str1 = 'I Love' str2 = 'You!' print(str1 + str2) >> ...
- Python中str字符串的功能介绍
Str字符串的功能介绍 1. 字符串的操作 字符串的连接操作 符号: + 格式:str1 + str2 例如:str1 = 'I Love' str2 = 'You!' print(str1 + st ...
- 关于python中str数据类型的内置常用方法(函数)总结
str基本数据类型常用功能 center(self,width,fllchar=none) 内容居中,width表示总长度,fllchar表示空白处默认为 ...
随机推荐
- ”在活动中穿梭”已经重做为“Intent的使用”
更新地址:http://www.cnblogs.com/tangwanzun/p/5702276.html
- 【记录】iOS10 点击推送栏的问题
之前做的一个用户点击 推送栏然后处理相应事件是在这里面处理的 - (void)application:(UIApplication *)application didReceiveRemoteNoti ...
- C# .NET 逻辑层的框架设计
前述:在我的了解中,一个大项目的逻辑层是不可捉摸的,对于不同项目或场景都是不同的逻辑.先说明,我的想法是对逻辑层类结构,以及如何操作逻辑的方法进行抽象的封装.并且考虑将不同类,或者不同程序集中的逻辑方 ...
- python sorted排序用法详解
sorted排序 python sorted 排序 1. operator函数在介绍sorted函数之前需要了解一下operator函数. operator函数是python的内置函数,提供了一系列常 ...
- Linux上SQL及MYSQL简单操作
Linux上检查MYSQL是否安装: $ sudo service mysql start Ubuntu Linux安装配置MYSQL: $ sudo apt-get install mysql-se ...
- scipy安装问题
刚开始使用pip安装的scipy,后来报了错误,具体意思是 numpy版本不支持. 在python.org.pypi 官网上的SciPy包是一个zip版本的,要使用与numpy相对应的后缀才行,也就 ...
- SQL Server的学习
一.建库和表1.新建数据库语法: CREATE DATABASE SuperMarket//建立一个名为SuperMarket的数据库. 2.打开数据库语法: USE SuperMarket//打开刚 ...
- Java单例模式再加强——按组多单例
最近要使用alibaba的rocket mq(我们公司对其进行了封装,使其运行在dotNet平台上,Java还是和原生的差不多,涉及公司的内容本文不会提及),其中 在生产者组这一块,建议是用单例模式的 ...
- Fragment深入解析
写在顶部表示这点很重要: 本文转载自博客:http://blog.csdn.net/lmj623565791/article/details/37970961 欢迎访问原文 自从Fragment ...
- Zookeeper的安装和初步使用
1. Zookeeper集群角色 Zookeeper集群的角色: Leader 和 follower (Observer) zk集群最好配成奇数个节点 只要集群中有半数以上节点存活,集群就能提供 ...