2.3.5 字符串库 string
最后更新于:2022-04-02 00:26:02
### 2.3.5 字符串库 string
和数学库 math 一样,Python 还提供了字符串库 string,以支持更复杂的字符串操作。 为了使用 string 中的函数,必须先导入该模块。回忆一下,模块有两种导入方式:
```
import string
from string import *
```
它们的区别在于调用函数时是否需要加上模块名作为前缀。 模块 string 中的一些常用函数如下表所示:
| 函数 | 含义 |
| --- | --- |
| capitalize(s) | 将 s 的首字母改成大写 |
| capwords(s) | 将 s 中的每个单词的首字母改成大写 |
| center(s,width) | 将 s 扩展到给定宽度,且 s 居中 |
| count(s,sub) | 子串 sub 在 s 中出现的次数 |
| find(s,sub) | 求子串 sub 在 s 中首次出现的位置 |
| join(list) | 将列表 list 中的所有字符串合并成一个字符串 |
| ljust(s,width) | 将 s 扩展到给定宽度,且 s 居左(左对齐) |
| lower(s) | 将 s 的所有字母改成小写 |
| lstrip(s) | 将 s 的所有前导空格删去 |
| replace(s,sub,newsub) | 将 s 中所有子串 sub 替换成 newsub |
| rfind(s,sub) | 求子串 sub 在 s 中最后一次出现的位置 |
| rjust(s,width) | 将 s 扩展到给定宽度,且 s 居右(右对齐) |
| rstrip(s) | 将 s 的所有尾部空格删去 |
| split(s) | 将 s 拆分成子串的列表 |
| upper(s) | 将 s 的所有字母改成大写 |
表 2.5 string 库中的一些函数
下面是几个简单的例子:
```
>>> from string import *
>>> capwords("hello world!")
'Hello World!'
>>> count("知之为知之不知为不知","不知")
2
>>> find("知之为知之不知为不知","不知")
10
>>> rfind("知之为知之不知为不知","不知")
16
>>> print replace("知之为知之不知为不知","知","zhi")
zhi 之为 zhi 之不 zhi 为不 zhi
```
';