String模块

一、String模块简介


String模块提供我们日常要使用的字符,并且把字符进行分类,我们编程过程中如果遇到要使用字符,可以很方便的通过导入该模块来使用字符。比如如果我们要写一个判断用户输入的字符是不是a-zA-Z字符,我们就可以通过使用该模块提供的功能来很容易的完成。

二、String模块内容


>>> import string
>>> dir(string)
['Formatter',
 'Template',
 '_ChainMap',
 '_TemplateMetaclass',
 '__all__',
 '__builtins__',
 '__cached__',
 '__doc__',
 '__file__',
 '__loader__',
 '__name__',
 '__package__',
 '__spec__',
 '_re',
 '_string',
 'ascii_letters',
 'ascii_lowercase',
 'ascii_uppercase',
 'capwords',
 'digits',
 'hexdigits',
 'octdigits',
 'printable',
 'punctuation',
 'whitespace']

在上面的输出中,我们一般只关心以小写字母开头属性。

下面我们一一来讲解:

1、string.ascii_letters

>>> import string
>>> print(string.ascii_letters)
  abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

通过上面的输出可以看出该模块的ascii_letters属性是打印大小写字母a-zA-Z。

应用:我们可以利用这个属性来判断用户的输入是否符合要求

我们写一个函数来判断用户的输入是否符合要求
>>> def check(arg):
        '''我们可以在函数中导入要使用的模块'''
        import string
        if arg in string.ascii_letters:
            print('你的输入符合要求!')
        else:
            print('你的输入不符合要求!')

2、string.ascii_lowercase 和 string.ascii_uppercase

跟上面一样,我们先在终端试着输出以上两个属性

>>> import sring
>>> print(string.ascii_lowercase)
    abcdefghijklmnopqrstuvwxyz
>>> print(string.ascii_uppercase)
    ABCDEFGHIJKLMNOPQRSTUVWXYZ

通过上面的输出我们可以发现其实这两个属性就是string.ascii_letters属性的细分而已,它可以让我们缩小字符范围,用法几乎都一样的。


3、string.digits

>>> import string
>>> print(string.digits)
    0123456789

该属性就是0-9的字符数字

4、string.hexdigits

>>> import string
>>> print(string.hexdigits)
    0123456789abcdefABCDEF

该属性就是16进制数组成的字符串


5、string.octdigits

>>> import string
>>> print(string.hexdigits)
    01234567

该属性就是8进制数组成的字符串


6、string.printable

>>> import string
>>> print(string.printable)
    0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n\r\x0b\x0c

该属性就是任何可以打印出来的字符组成的字符串


7、string.punctuation

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

该属性就是标点符号组成的字符串


8、string.whitespace

>>> import string
>>> print(string.whitespace)
    \t\n\r\x0b\x0c

可以看出该属性就是一些可以打印,但是不能轻易用肉眼看出的字符,比如制表符、换行符、回车符。


总结

该模块虽然提供几个简单的关于字符的属性,但是能很大方便的提高我们的编程效率。平时我们要用到某些字符集的时候,只需要输入两三行代码,而不用手动输入一堆让人眼花缭乱的字符。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。