string

2022-11-26

Python 常见的字符串操作,不过里面的许多函数已经移植到 str.

string

方法在 Python 3 标准库 第一章讲到。

.capwords()

把字符串中所有单词的首字母转换为大写,类似内置函数 .title(),两者的区别为:

  1. capwords() 会将撇号 ' 后的的字母进行大写转换,而 title() 不会
  2. capwords() 会移除开头和末尾的空白字符串,而 title() 不会
1
import string
2
3
s = " don't panic! "
4
5
print("capwords: ", string.capwords(s))
6
print("title: ", s.title())
7
8
# capwords: Don't Panic!
9
# title: Don'T Panic!

capwords()

函数先会通过 str#split|split 把参数拆分为单词,然后使用 str#capitalize|capitalize 把每个单词的首字母大写,最后调用 str#join|join 把单词重新拼接起来。

此外如果可选的第二个参数 sep 被省略(默认 None),则连续的空白字符会被替换为单个空格符并且开头和末尾的空白字符串会被移除。

字符串常量

1
import string
2
3
# 大小写字母, 即 ascii_lowercase 和 ascii_uppercase 拼接
4
string.ascii_letters
5
# 返回:'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
6
7
# 小写字母
8
string.ascii_lowercase
9
# 返回: 'abcdefghijklmnopqrstuvwxyz'
10
11
# 大写字母
12
string.ascii_uppercase
13
# 返回: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
14
15
# 数字
16
string.digits
17
# 返回: '0123456789'
18
19
# 符号
20
string.punctuation
21
# 返回: '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'