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 相关文章推荐
python3.6的venv模块使用详解
Aug 01 Python
python模块之subprocess模块级方法的使用
Mar 26 Python
django rest framework vue 实现用户登录详解
Jul 29 Python
Python搭建HTTP服务过程图解
Dec 14 Python
python打印异常信息的两种实现方式
Dec 24 Python
Python变量、数据类型、数据类型转换相关函数用法实例详解
Jan 09 Python
django美化后台django-suit的安装配置操作
Jul 12 Python
Python中logger日志模块详解
Aug 04 Python
python爬虫如何解决图片验证码
Feb 14 Python
Python并发编程实例教程之线程的玩法
Jun 20 Python
python代码实现备忘录案例讲解
Jul 26 Python
python中的3种定义类方法
Nov 27 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
shopex主机报错误请求解决方案(No such file or directory)
2011/12/27 PHP
PHP中使用sleep造成mysql读取失败的案例和解决方法
2014/08/21 PHP
php基于mcrypt的加密解密实例
2014/10/27 PHP
List Information About the Binary Files Used by an Application
2007/06/18 Javascript
高亮显示web页表格行的javascript代码
2010/11/19 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之绑定事件
2015/11/19 Javascript
JavaScript常用字符串与数组扩展函数小结
2016/04/24 Javascript
js实现网页定位导航功能
2017/03/07 Javascript
使用JavaScriptCore实现OC和JS交互详解
2017/03/28 Javascript
JS正则获取HTML元素的方法
2017/03/31 Javascript
基于node下的http小爬虫的示例代码
2018/01/11 Javascript
vue2.0实现移动端的输入框实时检索更新列表功能
2018/05/08 Javascript
浅谈Node 异步IO和事件循环
2019/05/05 Javascript
JS扁平化输出数组的2种方法解析
2019/09/17 Javascript
Vue项目打包部署到iis服务器的配置方法
2019/10/14 Javascript
浅谈vue获得后台数据无法显示到table上面的坑
2020/08/13 Javascript
javascript局部自定义鼠标右键菜单
2020/12/08 Javascript
[03:40]DOTA2抗疫特别篇《英雄年代》
2020/02/28 DOTA
Python标准库之循环器(itertools)介绍
2014/11/25 Python
利用Python中的mock库对Python代码进行模拟测试
2015/04/16 Python
深入解析Python编程中super关键字的用法
2016/06/24 Python
python kmeans聚类简单介绍和实现代码
2018/02/23 Python
在python2.7中用numpy.reshape 对图像进行切割的方法
2018/12/05 Python
Flask框架重定向,错误显示,Responses响应及Sessions会话操作示例
2019/08/01 Python
django 使用 PIL 压缩图片的例子
2019/08/16 Python
已安装tensorflow-gpu,但keras无法使用GPU加速的解决
2020/02/07 Python
基于CentOS搭建Python Django环境过程解析
2020/08/24 Python
解决python3.x安装numpy成功但import出错的问题
2020/11/17 Python
澳大利亚儿童鞋在线:The Trybe
2019/07/16 全球购物
Lookfantastic阿联酋官网:英国知名美妆护肤购物网站
2020/05/26 全球购物
西班牙Polo衫品牌:Polo Club
2020/08/09 全球购物
大学毕业生简单自荐信
2013/11/05 职场文书
乡镇办公室工作决心书
2014/03/11 职场文书
2014年端午节活动方案
2014/03/11 职场文书
门前三包责任书
2014/04/15 职场文书
PHP 对接美团大众点评团购券(门票)的开发步骤
2021/04/03 PHP