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 os模块中的isfile()和isdir()函数均返回false问题解决方法
Feb 04 Python
python实现的简单FTP上传下载文件实例
Jun 30 Python
Python实现将DOC文档转换为PDF的方法
Jul 25 Python
Python多维/嵌套字典数据无限遍历的实现
Nov 04 Python
python xlsxwriter创建excel图表的方法
Jun 11 Python
Python JSON格式数据的提取和保存的实现
Mar 22 Python
python定时复制远程文件夹中所有文件
Apr 30 Python
opencv3/C++实现视频背景去除建模(BSM)
Dec 11 Python
详解从Django Allauth中进行登录改造小结
Dec 18 Python
Python使用docx模块实现刷题功能代码
Feb 13 Python
python 链接sqlserver 写接口实例
Mar 11 Python
Python验证码截取识别代码实例
May 16 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 EOT定界符的使用详解
2008/09/30 PHP
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
2013/05/10 PHP
laravel 5 实现模板主题功能(续)
2015/03/02 PHP
PHP基本语法实例总结
2016/09/09 PHP
Nigma vs Liquid BO3 第二场2.14
2021/03/10 DOTA
javascript 动态修改样式和层叠样式表代码
2010/04/27 Javascript
jQuery实现渐变弹出层和弹出菜单的方法
2015/02/20 Javascript
js获取页面description的方法
2015/05/21 Javascript
JavaScript中的small()方法使用详解
2015/06/08 Javascript
SpringMVC返回json数据的三种方式
2015/12/10 Javascript
浅析ES6的八进制与二进制整数字面量
2016/08/30 Javascript
NodeJS中的MongoDB快速入门详细教程
2016/11/11 NodeJs
JS设计模式之单例模式(一)
2017/09/29 Javascript
在vue中获取微信支付code及code被占用问题的解决方法
2019/04/16 Javascript
详解ES6数组方法find()、findIndex()的总结
2020/05/12 Javascript
详解Vue Cli浏览器兼容性实践
2020/06/08 Javascript
python 输出一个两行字符的变量
2009/02/05 Python
java直接调用python脚本的例子
2014/02/16 Python
python生成ppt的方法
2018/06/07 Python
Python简单读写Xls格式文档的方法示例
2018/08/17 Python
使用python和pygame制作挡板弹球游戏
2019/12/03 Python
Python 实现数组相减示例
2019/12/27 Python
Python实现不规则图形填充的思路
2020/02/02 Python
python中not、and和or的优先级与详细用法介绍
2020/11/03 Python
python中append函数用法讲解
2020/12/11 Python
利用python实现后端写网页(flask框架)
2021/02/28 Python
一款基于css3麻将筛子3D翻转特效的实例教程
2014/12/31 HTML / CSS
Ticketmaster意大利:音乐会、节日、艺术和剧院的官方门票
2019/12/23 全球购物
越南母婴用品购物网站:Kids Plaza
2020/04/09 全球购物
C语言笔试题
2014/09/04 面试题
小学数学课后反思
2014/04/23 职场文书
学校综治宣传月活动总结
2014/07/02 职场文书
秋季校运会广播稿100字
2014/09/18 职场文书
七一慰问简报
2015/07/20 职场文书
教学反思怎么写
2016/02/24 职场文书
mysql连接查询中and与where的区别浅析
2021/07/01 MySQL