python3练习题--判断字符类型--string函数的应用

题目:任意输入一段字符,将不同字符的个数统计出来。

做题之前,我们先认识一个函数 string

养成help()的习惯。

>>>help(string)

里面回有这么一段:

DATA
    __all__ = ['ascii_letters', 'ascii_lowercase', 'ascii_uppercase', 'cap...
    ascii_letters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
    ascii_lowercase = 'abcdefghijklmnopqrstuvwxyz'
    ascii_uppercase = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
    digits = '0123456789'
    hexdigits = '0123456789abcdefABCDEF'
    octdigits = '01234567'
    printable = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTU...
    punctuation = '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
    whitespace = ' \t\n\r\x0b\x0c'

这一段定义了字符的类型名称及字符集。这个函数的作用就是用来描述字符的定义。那么下面的代码就不难理解了。

代码:

#!/usr/bin/python3

import string #该函数需要声明才能使用
letter = 0
digit = 0
punctuation = 0

a = input('请输入一段字符:',)

for b in a:
    if b in string.ascii_letters:
        letter += 1 #计数作用
    elif b in string.digits:
        digit += 1
    elif b in string.punctuation:
        punctuation += 1
print ('字母数:',letter,';','数字数:',digit,';','特殊字符数:',punctuation)

结果:

>>> 
请输入一段字符:GOJSPGSPGI0-5439dfjsdfjsofjsw9fskg.,/.s,;lf]sf\\;\
字母数: 32 ; 数字数: 6 ; 特殊字符数: 12


你可能感兴趣的:(python3)