Python中处理字符串的常用函数汇总【文末送书】

简介: 正式的Python专栏第23篇,同学站住,别错过这个从0开始的文章!

今天我们说了字符串的基础,格式化,这次我们讲解字符串的常用函数,不要错过! (文本送书,评论区抽取一位送书)

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

字符串都有哪些操作?

image.png

实际开发都有这些需求:


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


判断字符串属于那种字面类型(数字,全字母,其他)

判断字符串包含某些结构(数字大写,局部子串,子串出现频次等)

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


字符串的替换/合并/填充等

字典替换,填充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())

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

image.png

第二类 字符串编辑的操作

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

#!/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)

运行效果如下:

image.png

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

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

#!/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"))

运行效果如下:

image.png

书籍赠送 - 《大数据分析实用教程——基于Python实现》

image.png

【简介】

本书对大数据分析的原理与Python程序实现进行了系统的介绍,每种算法都采用sklearn和Matplotlib分别进行程序实现及数据可视化。


本书共8章,内容包括大数据分析概述、Python数据分析与可视化基础、关联规则与推荐算法、聚类算法及其应用、分类算法及其应用、回归与逻辑回归、人工神经网络、支持向量机等。


本书在理论上突出可读性,在实践上强调可操作性,实践案例丰富,实用性强。随书提供微课视频(正文对应处扫码可观看)、教学课件、习题答案、教学大纲等教学资源。


本书可作为高等院校相关专业大数据分析或大数据概论等课程的教材。也可供从事大数据分析、机器学习的人员作为参考书。


【作者】

这本书由三位作者联合主编:唐四薪, 赵辉煌, 唐琼。


唐四薪,男,1980年11月出生,湖南湘潭人。硕士,毕业于中南大学,现为衡阳师范学院计算机学院讲师,主要从事计算机相关专业的教学与研究。资深计算机图书作者,清华大学出版社畅销书作者

查看百度百科可以发现这是一位长期写作的作者,值得期待。


【编辑推荐】

书籍内扫码有配套微课,注重操作性

大量操作实验,参考答案

足够适量的大数据基础补充

大数据分析、机器学习是当下热门,值得学习

目录和更多书籍信息

https://item.jd.com/10035055672444.html

https://product.suning.com/0071151794/12304785309.html


作为大数据从业人员,学委看到了很多契合的技术,同时书内讲解的算法(K-mean,贝叶斯分类等),相关库(Numpy,SciPy,sklearn,Tensorflow等),软件(Anaconda)这些都是日常高频出现的。


就跟字符串处理的脉络一样,这些技术构成了数据分析的脉络,也丰富发展了数据分析数据科学这个领域,可以看看。


总结

学委并未把str字符串的所有函数都罗列了,编程不是刻板的,必须抓住重点。


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


我喜欢下面这句话:


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


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


目录
相关文章
|
1月前
|
Python
【python从入门到精通】-- 第五战:函数大总结
【python从入门到精通】-- 第五战:函数大总结
67 0
|
1月前
|
Python
Python之函数详解
【10月更文挑战第12天】
Python之函数详解
|
1月前
|
存储 数据安全/隐私保护 索引
|
1月前
|
Python
【10月更文挑战第6天】「Mac上学Python 11」基础篇5 - 字符串类型详解
本篇将详细介绍Python中的字符串类型及其常见操作,包括字符串的定义、转义字符的使用、字符串的连接与格式化、字符串的重复和切片、不可变性、编码与解码以及常用内置方法等。通过本篇学习,用户将掌握字符串的操作技巧,并能灵活处理文本数据。
54 1
【10月更文挑战第6天】「Mac上学Python 11」基础篇5 - 字符串类型详解
|
22天前
|
测试技术 数据安全/隐私保护 Python
探索Python中的装饰器:简化和增强你的函数
【10月更文挑战第24天】在Python编程的海洋中,装饰器是那把可以令你的代码更简洁、更强大的魔法棒。它们不仅能够扩展函数的功能,还能保持代码的整洁性。本文将带你深入了解装饰器的概念、实现方式以及如何通过它们来提升你的代码质量。让我们一起揭开装饰器的神秘面纱,学习如何用它们来打造更加优雅和高效的代码。
|
24天前
|
弹性计算 安全 数据处理
Python高手秘籍:列表推导式与Lambda函数的高效应用
列表推导式和Lambda函数是Python中强大的工具。列表推导式允许在一行代码中生成新列表,而Lambda函数则是用于简单操作的匿名函数。通过示例展示了如何使用这些工具进行数据处理和功能实现,包括生成偶数平方、展平二维列表、按长度排序单词等。这些工具在Python编程中具有高度的灵活性和实用性。
|
27天前
|
Python
python的时间操作time-函数介绍
【10月更文挑战第19天】 python模块time的函数使用介绍和使用。
29 4
|
28天前
|
存储 Python
[oeasy]python038_ range函数_大小写字母的起止范围_start_stop
本文介绍了Python中`range`函数的使用方法及其在生成大小写字母序号范围时的应用。通过示例展示了如何利用`range`和`for`循环输出指定范围内的数字,重点讲解了小写和大写字母对应的ASCII码值范围,并解释了`range`函数的参数(start, stop)以及为何不包括stop值的原因。最后,文章留下了关于为何`range`不包含stop值的问题,留待下一次讨论。
20 1
|
1月前
|
自然语言处理 Java 数据处理
【速收藏】python字符串操作,你会几个?
【速收藏】python字符串操作,你会几个?
56 7
|
1月前
|
索引 Python
Python中的其他内置函数有哪些
【10月更文挑战第12天】Python中的其他内置函数有哪些
15 1