python字符串操作_Python 字符串操作 - 树懒学堂
字符串操作
由于Python在字符串和文本操作上的便利性,使Python成为一个流行的原生数据集操作语言已经有很长时间了。字符串对象的内建方法使得大部分文本操作非常简单。对于更为复杂的模式匹配和文本操作,正则表达式可能是需要的。
1、字符串对象方法
在很多字符串处理和脚本应用中,内建的字符串方法是足够的。例如,一个逗号分隔的字符串可以使用split方法拆分成多块:
split常和strip一起使用,用于清除空格(包括换行):
这些子字符串可以使用加法与两个冒号分隔符连接在一起:
但是这并不是一个实用的通用方法。在字符串’ : : ’的join方法中传入一个列表或元组是一种更快且更加Pythonic(Python风格化)的方法:
其他方法涉及定位子字符串。使用Python的in关键字是检测子字符串的最佳方法,尽管index和find也能实现同样的功能:
相关地,count返回的是某个特定的子字符串在字符串中出现的次数:
replace将用一种模式替代另一种模式。它通常也用于传入空字符串来删除某个模式。
下表是一些Python字符串方法的列表。
2、正则表达式
正则表达式提供了一种在文本中灵活查找或匹配(通常更为复杂的)字符串模式的方法。单个表达式通常被称为regex,是根据正则表达式语言形成的字符串。Python内建的re模块是用于将正则表达式应用到字符串上的库。
re模块主要有三个主题:模式匹配、替代、拆分。当然,这三部分主题是相关联的。一个正则表达式描述了在文本中需要定位的一种模式,可以用于多种目标。
当你调用re.split(‘\s+’, text),正则表达式首先会被编译,然后正则表达式的split方法在传入文本上被调用。你可以使用re.compile自行编译,形成一个可复用的正则表达式对象:
如果想获得的是一个所有匹配正则表达式的模式的列表,你可以使用findall方法:
注意:为了在正则表达式中避免转义符\的影响,可以使用原生字符串语法,比如r’C:\x’或者用等价的’C:\x’。
match和search与findall相关性很大。findall返回的是字符串中所有的匹配项,而search返回的仅仅是第一个匹配项。match更为严格,它只在字符串的起始位置进行匹配。
在文本上使用findall会生成一个电子邮件地址的列表:
search返回的是文本中第一个匹配到的电子邮件地址。对于前面提到的正则表达式,匹配对象只能告诉我们模式在字符串中起始和结束的位置:
3、pandas中的向量化字符串函数
清理杂乱的数据集用于分析通常需要大量的字符串处理和正则化。包含字符串的列有时会含有缺失数据,使事情变得复杂:
可以使用data.map将字符串和有效的正则表达式方法(以lambda或其他函数的方式传递)应用到每个值上,但是在NA(null)值上会失败。为了解决这个问题,Series有面向数组的方法用于跳过NA值的字符串操作。这些方法通过Series的str属性进行调用,例如,我们可以通过str.contains来检查每个电子邮件地址是否含有’gmail’:
下表中有更多pandas字符串方法。
python字符串操作_Python 字符串操作 - 树懒学堂相关推荐
- python聚合函数_Python 数据聚合 - 树懒学堂
数据聚合 聚合是指所有根据数组产生标量值的数据转换过程.之前的例子已经使用了一些聚合操作,包括mean.count.min和sum等. 下表展示了优化的groupby方法. 可以使用自行制定的聚合,并 ...
- python输出举例_python字符串格式化输出及相关操作代码举例
字符串的格式化 Python 支持格式化字符串的输出 .尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中.在 Python 中,字符串格式化使 ...
- python字符串的删除操作_Python字符串操作
Python字符串操作 访问字符串的元素 str = 'Hello World' print(str[0]) print(str[-1]) print(str[0:5]) 输出: H d Hello ...
- python 字符串赋值操作_python字符串操作
字符串 简介 字符串序列用于表示和存储文本,python中字符串是不可变的,一旦声明,不能改变 这里的的改变,指的是声明变量后的真实对象.但如果第二次用到变量,赋值,系统会默认为你新生成一个变量.比如 ...
- python设定字符串长度_python 修改字符串长度_Python 字符串操作
字符串常用操作 判断 变量.endswith("结尾字符"):判断结尾字符串. 变量.isalnum():判断是否是字母或数字. 变量.isalpha():判断是否是存英文字符. ...
- python字符串操作_python字符串操作
6.1 处理字符串 原始字符串:在字符串开始的引号之前加上r,使它成为原始字符串."原始字符串"完全忽略所有的转义字符,打印出字符串中的所有倒斜杠. 用三重引号的多行字符串:多行字 ...
- python统计字符串个数_python字符串中字符出现次数(python获取字符串个数)
原博文 2020-03-17 19:25 − 今天要说的是Python的字符串函数还是很方便的,只需要调用 count() 方法即可. 最近,我在一个网站上看到了一个自然语言处理课程.我详细解释了一些 ...
- python 定义字符串变量_python 字符串(1)
字符串 操练一下字符串吧. >>> print "good good study, day day up" good good study, day day up ...
- python 文档操作_Python 文件操作
一. Python 读写 创建文件 Python中对文件,文件夹(文件操作函数)的操作需要涉及到OS 模块和 shutil 模块 . 一) . OS模块 的基本操作 方法 功能 os.getcwd() ...
- python的数据库_python数据库操作-mysql数据库
一:连接 1:本地连接 mysql -u用户名 -p密码 2:连接远程服务器 mysql -u用户名 -p密码 -hip地址 -P端口号 线下修改远程服务端上部署的mysql服务器 二:创建数据库 c ...
最新文章
- (Python)石头剪刀布游戏
- Hinton等人新研究:如何更好地测量神经网络表示相似性
- USBCopyer(听说此款软件可以悄悄偷走你U盘的小电影)
- webservice python开发接口_基于Python的Webservice开发(四)-泛微OA的SOAP接口
- 的一致性哈希_五分钟看懂一致性哈希算法
- 用SqlConnectionStringBuilder修改连接超时时间
- HTML:如何创建表格
- 论文主题、引用量、中国机构 华人学者,KDD 2020 关键数据抢先看
- 首届Filecoin矿工大会会议重点
- 深度学习在搜狗无线搜索广告中的应用
- Aseprite动画技巧
- 面试必问题:缓存击穿、缓存穿透、缓存雪崩,你还傻傻分不清
- 计算机快捷键知识点,电脑常用快捷键复习知识点.pdf
- NLPCC历年投稿及接收率
- 解锁教爸妈使用智能手机的新方法!
- 【pandas drop()和dropna()函数使用详解】
- Elasticsearch一网打通
- Flutter: 千位数加逗号分隔
- jdbc入门到精通1.1访问数据库实战
- 营收毛利净利均双位数增长,亚信科技掌握了什么秘诀?
热门文章
- android错误怎么关机,Android系统小技巧:系统崩溃了只重启部分子系统,而不是全部重启...
- ogg oracle 测试kafka_利用ogg实现oracle到kafka的增量数据实时同步
- mysql中索引创建 查看和删除语句_MySQL如何创建和删除索引?
- 基于JAVA+SpringBoot+Mybatis+MYSQL的体育馆开放管理系统
- 基于JAVA+SpringMVC+Mybatis+MYSQL的音乐播放系统
- jsp点击文字改变颜色_这样给图片添加上文字、诗词、歌词,超吸睛
- 从Windows复制文件到Linux显示乱码问题
- 常用的正则表达式格式
- String和StringBuffer的区别
- xpose修改手机imei码,注入广告