【Python 技巧】判断字符串是否为字母/数字/大小写/空白字符/有效标识符/可打印字符

简单来说:

  • str.isalnum():判断所有字符是否都是数字或者字母

  • str.isalpha():判断所有字符是否都是字母

  • str.isdigit():判断所有字符是否都是数字

  • str.islower():判断字符串中所有字母是否都是小写

  • str.isupper():判断字符串中所有字母是否都是大写

  • str.istitle():判断字符串中所有单词的首字母都是大写

  • str.isspace():判断字符串中所有字符是否为由空白字符

  • str.isnumeric():判断所有字符是否都是数字(只针对 Unicode 对象)

  • str.isdecimal():判断所有字符是否都是十进制字符(只针对 Unicode 对象)

  • str.isidentifier():判断字符串是否为有效标识符

  • str.isprintable():判断字符串中所有字符是否都是可打印字符或字符串是否为空


详细来说:

str.isalnum():判断所有字符是否都是数字或者字母,为真返回 Ture,否则返回 False。

>>> '123abc'.isalnum()
True

>>> '123 abc'.isalnum()
False

str.isalpha():判断所有字符是否都是字母,为真返回 Ture,否则返回 False。(当字符串为中文时, 也返回 True)

>>> '我爱Python'.isalpha()
True

>>> '52python'.isalpha()
False

str.isdigit():判断所有字符是否都是数字,为真返回 Ture,否则返回 False。

>>> '2020'.isdigit()
True

>>> ' '.isdigit()
False

str.islower():判断字符串中所有字母是否都是小写,为真返回 Ture,否则返回 False。

>>> 'i_love_python'.islower()
True

>>> 'I_Love_Python'.islower()
False

str.isupper():判断字符串中所有字母是否都是大写,为真返回 Ture,否则返回 False。

>>> 'I LOVE PYTHON!'.isupper()
True

>>> 'I Love Python!'.isupper()
False

str.istitle():判断字符串中所有单词的首字母都是大写,为真返回 Ture,否则返回 False。

>>> 'I Love Python!'.istitle()
True

>>> 'I love python!'.istitle()
False

str.isspace():判断字符串中所有字符是否为由空白字符,为真返回 Ture,否则返回 False。

>>> '   '.isspace()
True

>>> 'I Love Python!'.isspace()
False

str.isnumeric():判断所有字符是否都是数字这种方法只针对 Unicode 对象,为真返回 Ture,否则返回 False。(在字符串前添加 u 前缀即可定义一个十进制字符串)

>>> u'2020'.isnumeric()
True

>>> u'hi2020'.isnumeric()
False

str.isdecimal():判断所有字符是否都是十进制字符这种方法只针对 Unicode 对象,为真返回 Ture,否则返回 False。

>>> u'hi2020'.isdecimal()
False

>>> u'2020'.isdecimal()
True

str.isidentifier():判断字符串是否为有效标识符,为真返回 Ture,否则返回 False。(有效标识符定义:仅包含大写字母 A-Z、小写字母 a-z、数字 0-9 或下划线 _,且不能以数字开头或包含任何空格)

>>> 'I_Love_Python'.isidentifier()
True

>>> 'I Love Python'.isidentifier()
False

str.isprintable():判断字符串中所有字符是否都是可打印字符或字符串是否为空,为真返回 Ture,否则返回 False。(不可打印的字符可以是制表符 \t 和换行符 \n 等,注意空格是可打印的)

>>> ' '.isprintable()
True

>>> 'I Love Python!'.isprintable()
True

>>> 'I Love Python!\n'.isprintable()
False
发布了149 篇原创文章 · 获赞 518 · 访问量 46万+

猜你喜欢

转载自blog.csdn.net/qq_36759224/article/details/104393067