Python的字符串模块

Python的String模块包含一些字符串操作的常量、实用函数和类。

Python字符串模块

这是一个内置模块,在使用其常量和类之前,我们必须先导入它。

字符串模块常量

让我们来看看在字符串模块中定义的常量。

import string

# string module constants
print(string.ascii_letters)
print(string.ascii_lowercase)
print(string.ascii_uppercase)
print(string.digits)
print(string.hexdigits)
print(string.whitespace)  # ' \t\n\r\x0b\x0c'
print(string.punctuation)

输出:

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0123456789
0123456789abcdefABCDEF
 	

!"#$%&'()*+,-./:;?@[\]^_`{|}~
python string module constants

将所有单词的首字母变为大写的字符串函数

Python的字符串模块包含一个单一的实用函数——capwords(s, sep=None)。该函数使用str.split()将指定的字符串分割为单词。然后它使用str.capitalize()函数将每个单词首字母大写。最后,它使用str.join()将首字母大写的单词连接起来。如果可选参数sep没有提供或者为None,则会删除前导和尾随的空格,并使用单个空格分隔单词。如果提供了sep,则使用该分隔符来分割和连接单词。

s = '  Welcome TO  \n\n Olivia'
print(string.capwords(s))
python string capwords

Python字符串模块类

Python的字符串模块包含两个类 – Formatter和Template。

格式化工具

它的行为和str.format()函数完全相同。如果你想要子类化并定义自己的格式化字符串语法,这个类就变得很有用。让我们看一个使用Formatter类的简单示例。

from string import Formatter

formatter = Formatter()
print(formatter.format('{website}', website='Olivia'))
print(formatter.format('{} {website}', 'Welcome to', website='Olivia'))

# format() behaves in similar manner
print('{} {website}'.format('Welcome to', website='Olivia'))

结果:

Welcome to Olivia
Welcome to Olivia
python string module Formatter class

模板

这个类用于为字符串替换创建一个简单的字符串模板,如PEP 292中所描述的。在不需要复杂的格式化规则的应用程序中实现国际化(i18n)时非常有用。

from string import Template

t = Template('$name is the $title of $company')
s = t.substitute(name='Pankaj', title='Founder', company='Olivia.')
print(s)
Python string module Template class

您可以从我们的GitHub存储库中检查完整的Python脚本和更多的Python示例。

参考文献:官方文档

发表回复 0

Your email address will not be published. Required fields are marked *