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获取豆瓣电影简介代码分享
Jan 16 Python
Python3处理文件中每个词的方法
May 22 Python
深入理解python中的闭包和装饰器
Jun 12 Python
在Python中分别打印列表中的每一个元素方法
Nov 07 Python
centos7之Python3.74安装教程
Aug 15 Python
python中hasattr()、getattr()、setattr()函数的使用
Aug 16 Python
django admin 自定义替换change页面模板的方法
Aug 23 Python
Python爬取豆瓣视频信息代码实例
Nov 16 Python
python做接口测试的必要性
Nov 20 Python
python分布式计算dispy的使用详解
Dec 22 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
Aug 17 Python
如何使用Python实现一个简易的ORM模型
May 12 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
关于手调机和数调机的选择
2021/03/02 无线电
常用表单验证类,有了这个,一般的验证就都齐了。
2006/12/06 PHP
php下删除一篇文章生成的多个静态页面
2010/08/08 PHP
php处理json时中文问题的解决方法
2011/04/12 PHP
php学习笔记 php中面向对象三大特性之一[封装性]的应用
2011/06/13 PHP
php中一个完整表单处理实现代码
2011/11/10 PHP
PHP 异步执行方法,模拟多线程的应用分析
2013/06/03 PHP
Codeigniter(CI)框架分页函数及相关知识
2014/11/03 PHP
jQuery 注意事项 与原因分析
2009/04/24 Javascript
DOM 基本方法
2009/07/18 Javascript
基于JQuery框架的AJAX实例代码
2009/11/03 Javascript
初识javascript 文档碎片
2010/07/13 Javascript
JavaScript中split() 使用方法汇总
2015/04/17 Javascript
利用jQuery和CSS将背景图片拉伸
2015/10/16 Javascript
JS HTML5拖拽上传图片预览
2016/07/18 Javascript
详解webpack分包及异步加载套路
2017/06/29 Javascript
JavaScript中数组常见操作技巧
2017/09/01 Javascript
vue打包相关细节整理(小结)
2018/09/28 Javascript
js实现图片放大并跟随鼠标移动特效
2019/01/18 Javascript
通过npm或yarn自动生成vue组件的方法示例
2019/02/12 Javascript
微信小程序学习笔记之登录API与获取用户信息操作图文详解
2019/03/29 Javascript
vue created钩子函数与mounted钩子函数的用法区别
2020/11/05 Javascript
Python实现屏幕截图的代码及函数详解
2016/10/01 Python
浅析python递归函数和河内塔问题
2017/04/18 Python
基于torch.where和布尔索引的速度比较
2020/01/02 Python
Python要如何实现列表排序的几种方法
2020/02/21 Python
Python如何在main中调用函数内的函数方式
2020/06/01 Python
Python做图像处理及视频音频文件分离和合成功能
2020/11/24 Python
html5 Canvas画图教程(5)—canvas里画曲线之arc方法
2013/01/09 HTML / CSS
韩国家庭购物网上商店:Nsmall
2017/05/07 全球购物
H&M旗下高端女装品牌:& Other Stories
2018/05/07 全球购物
学校安全防火方案
2014/06/07 职场文书
项目备案申请报告
2015/05/15 职场文书
Python list去重且保持原顺序不变的方法
2021/04/03 Python
python3实现常见的排序算法(示例代码)
2021/07/04 Python
在 HTML 页面中使用 React的场景分析
2022/01/18 Javascript