Python字符串函数详解:从基础到高级应用
Python提供了许多内置函数来操作字符串。Python字符串是不可变的,因此所有这些函数都会返回一个新字符串,而原始字符串保持不变。
Python字符串函数
在字符串操作中有许多功能可供使用。然而,记住所有功能并不可行。因此,我将它们分成不同的类别。
- 必须了解的字符串函数
- 值得了解的字符串函数
- 其他字符串函数
- 适用于字符串的内置函数
- 有用的字符串操作
必须了解的字符串函数
函数 | 描述 |
---|---|
format() | 用于从模板字符串和提供的值创建格式化的字符串。 |
split() | Python字符串split()函数用于根据分隔符将字符串分割成字符串列表。 |
join() | 此函数返回一个新字符串,该字符串是可迭代对象中的字符串与字符串对象作为分隔符的连接。 |
strip() | 用于去除字符串对象中的空白字符。 |
format_map() | Python字符串format_map()函数使用提供的映射中的替换返回字符串的格式化版本。 |
upper() | 我们可以使用str.upper()函数将字符串转换为大写。 |
lower() | 此函数创建一个小写的新字符串。 |
replace() | Python字符串replace()函数用于通过替换另一个字符串的某些部分来创建新字符串。 |
find() | Python字符串find()方法用于查找字符串中子字符串的索引。 |
translate() | Python字符串translate()函数返回一个新字符串,其中字符串中的每个字符都使用给定的转换表进行替换。 |
值得了解的字符串函数
函数 | 描述 |
---|---|
encode() | Python字符串encode()函数用于使用提供的编码对字符串进行编码。 |
count() | Python字符串count()函数返回给定字符串中子字符串的出现次数。 |
startswith() | Python字符串startswith()函数如果字符串以给定前缀开头,则返回True,否则返回False。 |
endswith() | Python字符串endswith()函数如果字符串以给定后缀结尾,则返回True,否则返回False。 |
capitalize() | Python字符串capitalize()函数返回字符串的大写版本。 |
center() | Python字符串center()函数返回指定大小的居中字符串。 |
casefold() | Python字符串casefold()函数返回字符串的大小写折叠副本。此函数用于执行不区分大小写的字符串比较。 |
expandtabs() | Python字符串expandtabs()函数返回一个新字符串,其中制表符(\t)被一个或多个空格替换。 |
index() | Python字符串index()函数返回找到指定子字符串的最低索引。 |
__contains__() | Python字符串类具有__contains__()函数,我们可以用它来检查字符串是否包含另一个字符串。我们也可以使用”in”运算符来执行此检查。 |
其他字符串函数
函数 | 描述 |
---|---|
isalnum() | Python字符串isalnum()函数在字符串仅由字母数字字符组成时返回True,否则返回False。 |
isalpha() | Python字符串isalpha()函数在字符串中的所有字符都是字母时返回True,否则返回False。 |
isdecimal() | Python字符串isdecimal()函数在字符串中的所有字符都是十进制字符时返回True,否则返回False。 |
isdigit() | Python字符串isdigit()函数在字符串中的所有字符都是数字时返回True,否则返回False。 |
isidentifier() | Python字符串isidentifier()函数在字符串是符合Python语言定义的有效标识符时返回True。 |
islower() | Python字符串islower()函数在字符串中所有有大小写的字符都是小写且至少有一个有大小写的字符时返回True,否则返回False。 |
isnumeric() | Python字符串isnumeric()函数在字符串中的所有字符都是数字字符时返回True,否则返回False。如果字符串为空,则此函数返回False。 |
isprintable() | Python字符串isprintable()函数在字符串中的所有字符都是可打印字符或字符串为空时返回True,否则返回False。 |
isspace() | Python字符串isspace()函数在字符串中只有空白字符时返回True,否则返回False。 |
istitle() | Python字符串istitle()函数在字符串是标题格式且不为空时返回True,否则返回False。 |
isupper() | Python字符串isupper()函数在所有有大小写的字符都是大写时返回True。 |
rjust(), ljust() | 实用函数,用于从源字符串创建指定长度的新字符串,分别进行右对齐和左对齐。 |
swapcase() | Python字符串swapcase()函数返回一个新字符串,其中大写字符转换为小写,小写字符转换为大写。 |
partition() | Python字符串partition()函数基于分隔符将字符串分割为包含三个字符串的元组。 |
splitlines() | Python字符串splitlines()函数返回字符串中的行列表。 |
title() | Python字符串title()函数返回字符串的标题格式版本。 |
zfill() | Python字符串zfill(width)函数返回指定宽度的新字符串。字符串左侧用0填充以创建指定的宽度。 |
在字符串上工作的内置函数
函数 | 描述 |
---|---|
len() | Python字符串长度可以使用内置的len()函数来确定。 |
ascii() | Python ascii()函数返回对象的字符串表示。此函数内部调用repr()函数,并在返回表示字符串之前,使用\x、\u或\U转义非ASCII字符。 |
bool() | Python bool()函数返回对象的布尔值。bool类只有两个实例——True和False。 |
bytearray() | Python bytearray()函数返回一个bytearray对象,该对象包含来自输入源的字节数组。 |
bytes() | 此函数返回一个bytes对象,它是一个不可变的整数序列,范围是0 <= x < 256。 |
ord() | Python ord()函数接受单个Unicode字符的字符串参数,并返回其整数Unicode码点值。 |
enumerate() | Python enumerate函数接受一个序列,然后将序列的每个元素转换为元组。 |
float() | 顾名思义,Python float()函数从输入参数返回一个浮点数。 |
hash() | 此函数返回给定对象的哈希值。 |
id() | Python id()函数返回对象的”标识”。对象的标识是一个整数,在对象的生命周期内保证唯一且恒定。 |
int() | Python int()函数从指定输入返回一个整数对象。返回的int对象将始终以10为基数。 |
map() | Python map()函数用于对指定可迭代对象的所有元素应用函数,并返回map对象。 |
print() | Python print()函数用于将数据打印到控制台。 |
slice() | Python slice()函数返回一个slice对象,表示由range(start, stop, step)指定的索引集。 |
type() | 此函数返回对象的类型。 |
有用的字符串操作
- Python中的f-string – Python 3.6中引入的新的、更好的字符串格式化方法。
- Python中的子字符串
- 生成随机字符串
- Python字符串模块
- 原始字符串
- 多行字符串
- 字符串相等性检查
- 字符串比较
- 字符串连接
- 字符串切片
- 反转字符串
- 字符串转日期时间 – strptime()
- 将字符串转换为整数
- 将字符串转换为字节
- 将字符串转换为浮点数
- 将列表转换为字符串
- 字符串模板类
- 检查变量是否为字符串?
- 连接字符串和整数
- 从字符串中删除字符
- 如何追加字符串
- 在列表中查找字符串
- 从字符串中删除空格
我需要记住所有的吗?
没有人能记住所有这些。你总是可以在你的IDE中找到它们。下面这张图片来自于我的PyCharm IDE的builtins.py文件。

我列出了所有的Python字符串方法吗?
我已列出几乎所有重要的Python字符串方法。然而,可能有一些方法被遗漏了。这个列表更新到Python 3.7版本。所以任何后续版本中出现的函数都不会在这里列出,至少现在还没有。如果你认为我漏掉了一些重要的函数,请在评论中回复,我也会添加它们。