Python中字符串String的基本内置函数与过滤字符模块函数的基本用法


Posted in Python onMay 27, 2019

首先我们要明白在python中当字符编码为:UTF-8时,中文在字符串中的占位为3个字节,其余字符为一个字节

下面就直接介绍几种python中字符串常用的几种字符串内置函数(本文中牵扯到了模块与一些之前章节没讲过的相关知识,坑我之后会填的)

字符串切片(截取字符串):

#字符串切片 string[开始位置:结束位置:步长]
name = "巩?鹏"print(name[0:])
 #从第一个字符截取到最后一个字符
print(name[0:2]) 
#从第一个字符截取到第二个字符
print(name[:3]) 
#从第一个字符截取到第三个个字符
print(name[0:3:2])
 #从第一个字符截取到最后一个字符,每次步长为2

输出结果如下:

巩?鹏
巩?
巩?鹏
巩鹏

分割字符串:

#分割字符串 split()函数 string.splist(sep,maxsplit)
#string.splist(用于指定分隔符(如果没有参数,默认为None即空格),
分割次数(默认为-1,即没有限制))
#eg
word ="所 有 风 光 的 背 后,最 终 都 要 用 孤 独 来 偿 还"
print(word.split()) #默认为用空格进行分割
print(word.split(',')) #使用逗号(,)进行分割
print(word.split(' ',5)) #使用空格(None) 来进行分割,且只分割前五个字符

输出结果如下:

['所', '有', '风', '光', '的', '背', '后,最', '终', '都', '要', '用', '孤', '独', '来', '偿', '还']
['所 有 风 光 的 背 后', '最 终 都 要 用 孤 独 来 偿 还']
['所', '有', '风', '光', '的', '背 后,最 终 都 要 用 孤 独 来 偿 还']

可以看出,分割完字符串后,返回值为数组.

检索字符串:count()函数 以及 find()函数 index()函数 startswitch()函数 endswitch()函数

#count()方法 返回值为:int 用于检索指定字符在另外一个字符串中出现的次数,如果检索的字符不存在则会返回0.
#语法为string.count(sub[start[end]]) string:被检索的字符串 sub:要检索的字符 start:可选,开始位置 end:可选,结束位置
#eg:
demoStr = "@中国,@美国,@英国"
print(demoStr.count('@'))
print(demoStr.count('国'))

输出结果如下:

3
3

find()函数

#find()函数 返回值为:int 用于检索指定字符在另外一个字符串中第一次出现的下标,如果没有发现字符则会返回-1
#语法为string.find(sub[start[end]]) string:被检索的字符串 sub:要检索的字符 start:可选,开始位置 end:可选,结束位置
#eg:
testStr = "123123123"
print(testStr.find('1'))
print(testStr.find('3'))

输出结果如下:

0
2

index()方法 返回值为:int 与find()方法类似 只是如果index()方法没有查找到字符将会抛出异常

startswitch()方法与endswitch()方法

#startswitch()方法与endswitch()方法 返回值:boolean
 用于检索是否以指定字符串开头亦或者是结尾
#语法:string.startswitch(sum[,start[,end]]) string.endswitch(sum[,start[,end]])
#eg:
email = "g2982272986@qq.com"
print(email.startswith('g'))
print(email.endswith('.com'))

输出结果如下:

True
True

字符串转换大小写 lower()方法 upper()方法

#lower()转小写 语法: string.lower()
#eg:
demoStr_lower = "sfSLDFsdlfk"
print("原字符串为"+demoStr_lower)
print("转换后为:"+demoStr_lower.lower())
#upper()转大写 语法:string.upper()
#eg:
demoStr_upper = "sfSLDFsdlfk"
print("原字符串为"+demoStr_upper)
print("转换后为:"+demoStr_upper.upper())

输出结果:

原字符串为sfSLDFsdlfk
转换后为:sfsldfsdlfk
原字符串为sfSLDFsdlfk
转换后为:SFSLDFSDLFK

过滤字符串: re模块中的sub函数

直接上代码,看完演示就懂了

#定义一个函数来过滤字符串
#语法:#sub(repl, string[, count]) 或 re.sub(pattern, repl, string[, count]):
#第一个参数:需要屏蔽的关键词 第二个参数:过滤后替换原来关键字的字符串 第三个参数:需要过滤的字符串
#使用repl替换string中每一个匹配的子串后返回替换后的字符串。

def filterfar(string):
  """
  用于过滤字符串
  :param 需要过滤的字符串: 参数
  :return: 过滤后的字符串
  """
  # 导入模块
  import re
  #需要过滤的关键字
  string_re = r"(黑客)|(监听)"
  #过滤字符串
  sub = re.sub(string_re,"= =!",string) #第一个参数:需要屏蔽的关键词 第二个参数:过滤后替换的问题 第三个参数:需要过滤的字符串
  print(sub)
#打印输出
filterfar("我是一名黑客")
filterfar("我现在正在监听你")

输出结果:

我是一名= =!
我现在正在= =!你

可以看到黑客以及监听二字被过滤成= =!了

至于语法中为什么有一个函数是直接函数名sub调用,一个是re.sub来调用,后续讲到模块时会讲到.

总结

以上所述是小编给大家介绍的Python中字符串String的基本内置函数与过滤字符模块函数的基本用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python实现的一个自动售饮料程序代码分享
Aug 25 Python
Python的MongoDB模块PyMongo操作方法集锦
Jan 05 Python
Python中的默认参数实例分析
Jan 29 Python
python正则表达式爬取猫眼电影top100
Feb 24 Python
Python3之简单搭建自带服务器的实例讲解
Jun 04 Python
Python pandas.DataFrame调整列顺序及修改index名的方法
Jun 21 Python
如何运行.ipynb文件的图文讲解
Jun 27 Python
使用python socket分发大文件的实现方法
Jul 08 Python
Django后端发送小程序微信模板消息示例(服务通知)
Dec 17 Python
关于tensorflow的几种参数初始化方法小结
Jan 04 Python
Python flask路由间传递变量实例详解
Jun 03 Python
安装pyinstaller遇到的各种问题(小结)
Nov 20 Python
python占位符输入方式实例
May 27 #Python
numpy.where() 用法详解
May 27 #Python
python numpy实现文件存取的示例代码
May 26 #Python
numpy linalg模块的具体使用方法
May 26 #Python
python flask解析json数据不完整的解决方法
May 26 #Python
如何使用pyinstaller打包32位的exe程序
May 26 #Python
让你Python到很爽的加速递归函数的装饰器
May 26 #Python
You might like
php为什么选mysql作为数据库? Mysql 创建用户方法
2007/07/02 PHP
Linux下PHP安装mcrypt扩展模块笔记
2014/09/10 PHP
详谈PHP文件目录基础操作
2014/11/11 PHP
PHP实现上传文件并存进数据库的方法
2015/07/16 PHP
老生常谈文本文件和二进制文件的区别
2017/02/27 PHP
PHP常用函数之根据生日计算年龄功能示例
2019/10/21 PHP
TP3.2.3框架文件上传操作实例详解
2020/01/23 PHP
jquery ajax 同步异步的执行示例代码
2010/06/23 Javascript
AJAX分页的代码(后台asp.net)
2011/02/14 Javascript
javascript限制文本框只允许输入数字(曾经与现在的方法对比)
2013/01/18 Javascript
js 浏览本地文件夹系统示例代码
2013/10/24 Javascript
node.js中的console.assert方法使用说明
2014/12/10 Javascript
javascript实现密码强度显示
2015/03/18 Javascript
jQuery Mobile开发中日期插件Mobiscroll使用说明
2016/03/02 Javascript
Javascript表单特效之十大常用原理性样例代码大总结
2016/07/12 Javascript
详解使用angular的HttpClient搭配rxjs
2017/09/01 Javascript
js Element Traversal规范中的元素遍历方法
2018/04/19 Javascript
angularJs中$scope数据序列化的实例
2018/09/30 Javascript
微信小程序实现的canvas合成图片功能示例
2019/05/03 Javascript
通过js示例讲解时间复杂度与空间复杂度
2019/08/06 Javascript
小程序实现长按保存图片的方法
2019/12/31 Javascript
jQuery 选择器用法实例分析【prev + next】
2020/05/22 jQuery
vue 限制input只能输入正数的操作
2020/08/05 Javascript
[04:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster 选手采访
2021/03/11 DOTA
python逐行读取文件内容的三种方法
2014/01/20 Python
举例讲解Python设计模式编程中对抽象工厂模式的运用
2016/03/02 Python
Python Socket编程详细介绍
2017/03/23 Python
基于python代码实现简易滤除数字的方法
2018/07/17 Python
【python】matplotlib动态显示详解
2019/04/11 Python
CSS3中Animation属性的使用详解
2015/08/06 HTML / CSS
Oroton中国官网:澳洲知名奢侈配饰品牌
2017/03/26 全球购物
Radley英国官网:英国莱德利小狗包
2019/03/21 全球购物
优秀教师先进事迹
2014/01/22 职场文书
反四风对照检查材料
2014/09/22 职场文书
2015年小学数学教师个人工作总结
2015/05/25 职场文书
详解PyTorch模型保存与加载
2022/04/28 Python