Python startswith()和endswith() 方法原理解析


Posted in Python onApril 28, 2020

startswith()方法

Python startswith() 方法用于检查字符串是否是以指定子字符串开头

如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查。

str.startswith(str, beg=0,end=len(string));

参数

  • str --检测的字符串。
  • strbeg --可选参数用于设置字符串检测的起始位置。
  • strend --可选参数用于设置字符串检测的结束位置。

返回值

如果检测到字符串则返回True,否则返回False。

常用环境:用于IF判断

#!/usr/local/bin/python
# coding=utf-8
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
>>> 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实现聊天室程序
Jul 27 Python
python导入坐标点的具体操作
May 10 Python
python高斯分布概率密度函数的使用详解
Jul 10 Python
python编写猜数字小游戏
Oct 06 Python
pycharm无法导入本地模块的解决方式
Feb 12 Python
Pycharm如何导入python文件及解决报错问题
May 10 Python
Python+Kepler.gl轻松制作酷炫路径动画的实现示例
Jun 02 Python
Django之腾讯云短信的实现
Jun 12 Python
Node.js 和 Python之间该选择哪个?
Aug 05 Python
python tkinter实现连连看游戏
Nov 16 Python
python 6种方法实现单例模式
Dec 15 Python
TensorFlow的环境配置与安装方法
Feb 20 Python
Python如何将函数值赋给变量
Apr 28 #Python
Python多线程thread及模块使用实例
Apr 28 #Python
Python基于模块Paramiko实现SSHv2协议
Apr 28 #Python
Python内置函数locals和globals对比
Apr 28 #Python
使用python实现CGI环境搭建过程解析
Apr 28 #Python
基于python连接oracle导并出数据文件
Apr 28 #Python
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
Apr 28 #Python
You might like
通过对服务器端特性的配置加强php的安全
2006/10/09 PHP
PHP笔记之:日期函数的使用介绍
2013/04/24 PHP
php解压文件代码实现php在线解压
2014/02/13 PHP
PHP 5.3新增魔术方法__invoke概述
2014/07/23 PHP
PHP管理依赖(dependency)关系工具 Composer 安装与使用
2014/08/18 PHP
php无法连接mysql数据库的正确解决方法
2016/07/01 PHP
javascript题目,重写函数让其无限相加
2012/02/15 Javascript
原生JS可拖动弹窗效果实例代码
2013/11/09 Javascript
用C/C++来实现 Node.js 的模块(二)
2014/09/24 Javascript
JavaScript实现级联菜单的方法
2015/06/29 Javascript
js多功能分页组件layPage使用方法详解
2016/05/19 Javascript
深入理解jQuery中的事件冒泡
2016/05/24 Javascript
JS简单实现浮动窗口效果示例
2016/09/07 Javascript
微信小程序 Audio API详解及实例代码
2016/09/30 Javascript
javascript cookie的基本操作(添加和删除)
2017/07/24 Javascript
浅谈Webpack 持久化缓存实践
2018/03/22 Javascript
Vue项目使用CDN优化首屏加载问题
2018/04/01 Javascript
vue权限问题的完美解决方案
2019/05/08 Javascript
Layui之table中的radio在切换分页时无法记住选中状态的解决方法
2019/09/02 Javascript
[42:48]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第二场 12.11
2020/12/16 DOTA
讲解Python中fileno()方法的使用
2015/05/24 Python
解决pandas中读取中文名称的csv文件报错的问题
2018/07/04 Python
使用python搭建服务器并实现Android端与之通信的方法
2019/06/28 Python
Python字符串中添加、插入特定字符的方法
2019/09/10 Python
修改Pandas的行或列的名字(重命名)
2019/12/18 Python
python 进制转换 int、bin、oct、hex的原理
2021/01/13 Python
介绍一下SQL Server的全文索引
2013/08/15 面试题
Tomcat的缺省是多少,怎么修改
2014/04/09 面试题
秋天的雨教学反思
2014/04/27 职场文书
乡镇爱国卫生月活动总结
2014/06/25 职场文书
幼儿园老师个人总结
2015/02/28 职场文书
大学生求职简历自我评价
2015/03/02 职场文书
通知的写法
2015/04/23 职场文书
创业项目(超低成本创业项目)
2019/08/16 职场文书
Golang 实现获取当前函数名称和文件行号等操作
2021/05/08 Golang
pytorch 权重weight 与 梯度grad 可视化操作
2021/06/05 Python