Python处理字符串的常用函数实例总结

 更新时间:2021年11月01日 09:13:33   作者:雷学委  
在数据分析中,特别是文本分析中,字符处理需要耗费极大的精力,因而了解字符处理对于数据分析而言,也是一项很重要的能力,这篇文章主要给大家介绍了关于Python处理字符串的常用函数,需要的朋友可以参考下

前言

今天我们说了字符串的基础,格式化,这次我们讲解字符串的常用函数,不要错过!

前两篇都在本文同个专栏,欢迎关注。下面开始讲解。

 字符串都有哪些操作?

实际开发都有这些需求:

第一大类:判断识别字符串

  • 判断字符串属于那种字面类型(数字,全字母,其他)
  • 判断字符串包含某些结构(数字大写,局部子串,子串出现频次等)

第二类:字符串编辑的操作(生成新字符串)

  • 字符串的替换/合并/填充等
  • 字典替换,填充0值,清空操作等

第三类:字符串跟字节串的互转。

这类操作通常发生在数据跨程序/跨服务器传输,我们传输bytes,然后获取转string类型。

第一类 判断识别字符串

学委准备了下面的代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/30 10:13 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : string_funs_cat1.py
# @Project : hello
import sys

slogan = "keep studying, keep coding, I am Levin"

# 判断结构
print("算某个子串出现数次: slogan.count('keep') = ", slogan.count('keep'))
print("找某个子串首次出现的下标: slogan.find('keep') = ", slogan.find('keep'))
print("找某个子串最后出现的下标: slogan.rfind('keep') = ", slogan.rfind('keep'))
print("找某个子串下标: slogan.index('keep') = ", slogan.index('keep'))
print("找某个子串下标: slogan.rindex('keep') = ", slogan.rindex('keep'))
print("是否'keep'开头的字符串: slogan.startswith('keep') = ", slogan.startswith('keep'))
print("是否'keep'结束的字符串: slogan.endswith('keep') = ", slogan.endswith('keep'))


# 字符串属性相关
print("字符串长度: len(slogan) = ", len(slogan))
print("字符串是否都是空格: slogan.isspace() = ", slogan.isspace())
print("字符串是否大写: slogan.isupper() = ", slogan.isupper())
print("字符串是否小写: slogan.islower() = ", slogan.islower())
print("字符串是否为每个词首字母都大写: slogan.istitle() = ", slogan.istitle())

# 判断字符串数据类型
print("字符串是否全为字母: slogan.isalpha() = ", slogan.isalpha())
print("字符串是否全为数字: slogan.isalnum() = ", slogan.isalnum())
print("字符串是否数字: slogan.isnumeric() = ", slogan.isnumeric())
print("字符串是否浮点数: slogan.isdecimal() = ", slogan.isdecimal())
print("字符串是否为空格串: slogan.isspace() = ", slogan.isspace())

读者可以直接复制运行代码,学委补充了运行效果图:

第二类 字符串编辑的操作

下面学委准备了一些代码展示:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/30 10:13 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : string_funs_cat2.py
# @Project : hello
import sys

slogan = "keep studying, keep coding, I am Levin"

print("首字母大写: slogan.capitalize() = ", slogan.capitalize())
print("全部字母大写: slogan.upper() = ", slogan.upper())
print("全部字母小写: slogan.lower() = ", slogan.lower())
print("转为首字母都大写(标题风格): slogan.title() = ", slogan.title())
print("大小写逆转: slogan.swapcase() = ", slogan.swapcase())

table = slogan.maketrans({"e": "5"})
print("字符串替换表: slogan.translate(table) = ", slogan.translate(table))

# 字符串替换,合并,填充等
print("替换tabs为n个空格: 'hello\t学委'.expandtabs(4) = '", "hello\t学委".expandtabs(4))
print("左子串来串联传入的列表: ' '.join(slogan) = '", " ".join(slogan))
print("替换子串: ' '.replace(first, second) = '", slogan.replace("e", "11"))
print("填充0值: slogan.rzfill(2)= '", slogan.zfill(50))
print("填充#值: slogan.rjust(50,"#")= '", slogan.rjust(50,"#"))
print("填充#值: slogan.ljust(50,"#")= '", slogan.ljust(50,"#"))
print("移除首尾空格: slogan.strip()= '", slogan.strip())

data = slogan.split("e")
print("split slogan into data= ", data)

运行效果如下:

第三类:字符串跟字节串的互转

下面学委准备了一些代码展示:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/30 10:13 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : string_funs_cat3.py
# @Project : hello
import sys

slogan = "keep studying, keep coding, I am Levin"
bytes = slogan.encode("utf-8")
print("type of encoded string = ", type(bytes))
# 注意python的string类型没有decode函数,该函数属于bytes类型对象特有!!!
print("type of decoded byte = ", type(bytes.decode("utf-8")))
print("type of decoded byte = ", bytes.decode("utf-8"))

运行效果如下:

总结

其实学委还漏了几个函数,但是不想介绍它们了。

学习编程不是去记忆,但是也并非啥都不看都靠感觉。

我喜欢下面这句话:

读书破万卷,下笔如有神!

精心准备的代码,读者运行一下,自己感悟!(注释写的很清楚了)

到此这篇关于Python处理字符串的常用函数的文章就介绍到这了,更多相关Python处理字符串函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python等差数列求和公式前 100 项的和实例

    python等差数列求和公式前 100 项的和实例

    今天小编就为大家分享一篇python等差数列求和公式前 100 项的和实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • python之如何将标签转化为one-hot(独热编码)

    python之如何将标签转化为one-hot(独热编码)

    这篇文章主要介绍了python之如何将标签转化为one-hot(独热编码)问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Python读取JSON数据操作实例解析

    Python读取JSON数据操作实例解析

    这篇文章主要介绍了Python读取JSON数据操作实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • python装饰器简介及同时使用多个装饰器的方法

    python装饰器简介及同时使用多个装饰器的方法

    这篇文章主要介绍了python装饰器简介及同时使用多个装饰器的方法,python支持一个函数同时使用多个装饰器,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • 详解PyQt5 GUI 接收UDP数据并动态绘图的过程(多线程间信号传递)

    详解PyQt5 GUI 接收UDP数据并动态绘图的过程(多线程间信号传递)

    这篇文章主要介绍了PyQt5 GUI 接收UDP数据并动态绘图(多线程间信号传递),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • 利用Python写一个爬妹子的爬虫

    利用Python写一个爬妹子的爬虫

    这篇文章主要给大家介绍了关于利用Python写一个爬妹子爬虫的相关资料,文中通过实例代码将实现的方法一步步介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-06-06
  • 用Python的SimPy库简化复杂的编程模型的介绍

    用Python的SimPy库简化复杂的编程模型的介绍

    这篇文章主要介绍了用Python的SimPy库简化复杂的编程模型的介绍,本文来自于官方的开发者技术文档,需要的朋友可以参考下
    2015-04-04
  • python之NAN和INF值处理方式

    python之NAN和INF值处理方式

    这篇文章主要介绍了python之NAN和INF值处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • python中map()函数的使用方法示例

    python中map()函数的使用方法示例

    map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。下面这篇文章主要给大家介绍了关于python中map()函数的使用方法,需要的朋友可以参考下
    2017-09-09
  • 详解Django中 render() 函数的使用方法

    详解Django中 render() 函数的使用方法

    这篇文章主要介绍了Django中 render() 函数的使用方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04

最新评论