Python 字符串模块

Python字符串模块

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

字符串模块常量

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

import string

# 字符串模块常量
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
 	

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

string capwords() 函数

Python字符串模块包含一个实用函数 - capwords(s, sep=None)。此函数使用str.split()将指定的字符串拆分为单词。然后,它使用str.capitalize()函数对每个单词进行大写处理。最后,它使用str.join()连接大写单词。如果未提供可选参数sep或为None,则会删除前导和尾随空格,并使用单个空格分隔单词。如果提供了sep,则使用该分隔符拆分和连接单词。

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

输出:Welcome To Journaldev

Python字符串模块类

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

Formatter

它的行为与str.format()函数完全相同。如果要对其进行子类化并定义自己的格式字符串语法,则此类将非常有用。让我们看一个使用Formatter类的简单示例。

from string import Formatter

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

# format()的行为类似
print('{} {website}'.format('Welcome to', website='JournalDev'))

输出:

Welcome to JournalDev
Welcome to JournalDev

Template

此类用于创建字符串模板,以便进行更简单的字符串替换,如PEP 292中所述。在实现国际化(i18n)的应用程序中,它对于不需要复杂格式规则的情况非常有用。

from string import Template

t = Template('$name is the $title of $company')
s = t.substitute(name='Pankaj', title='Founder', company='JournalDev.')
print(s)

输出:Pankaj is the Founder of JournalDev.

你可能感兴趣的:(Python,python,开发语言)