头图

大家好,我是涛哥,本文内容来自 涛哥聊Python ,转载请标原创。

更多Python学习内容:http://ipengtao.com

Python作为一种高级编程语言,其强大的字符串处理功能使其在文本处理领域备受欢迎。本文将详细介绍Python中的一些常用字符串判断函数,并通过示例代码展示它们的实际应用。希望通过本文的介绍,能够帮助大家更好地理解和使用这些字符串判断函数。

1. str.isalnum()

函数介绍

str.isalnum() 方法用于判断字符串是否只包含字母和数字字符。如果字符串至少有一个字符且所有字符都是字母或数字,则返回 True,否则返回 False。

示例代码

s1 = "abc123"
s2 = "abc 123"
s3 = ""

print(s1.isalnum())  # 输出: True
print(s2.isalnum())  # 输出: False
print(s3.isalnum())  # 输出: False

代码解析

  • s1 包含字母和数字,因此返回 True。
  • s2 包含空格,故返回 False。
  • s3 是空字符串,因此返回 False。

2. str.isalpha()

函数介绍

str.isalpha() 方法用于判断字符串是否只包含字母字符。如果字符串至少有一个字符且所有字符都是字母,则返回 True,否则返回 False。

示例代码

s1 = "abcdef"
s2 = "abc123"
s3 = "abc def"
s4 = ""

print(s1.isalpha())  # 输出: True
print(s2.isalpha())  # 输出: False
print(s3.isalpha())  # 输出: False
print(s4.isalpha())  # 输出: False

代码解析

  • s1 包含的都是字母,因此返回 True。
  • s2 包含数字,故返回 False。
  • s3 包含空格,故返回 False。
  • s4 是空字符串,因此返回 False。

3. str.isdigit()

函数介绍

str.isdigit() 方法用于判断字符串是否只包含数字字符。如果字符串至少有一个字符且所有字符都是数字,则返回 True,否则返回 False。

示例代码

s1 = "123456"
s2 = "123abc"
s3 = "123 456"
s4 = ""

print(s1.isdigit())  # 输出: True
print(s2.isdigit())  # 输出: False
print(s3.isdigit())  # 输出: False
print(s4.isdigit())  # 输出: False

代码解析

  • s1 包含的都是数字,因此返回 True。
  • s2 包含字母,故返回 False。
  • s3 包含空格,故返回 False。
  • s4 是空字符串,因此返回 False。

4. str.islower()

函数介绍

str.islower() 方法用于判断字符串中的所有字母是否都是小写。如果字符串至少有一个字母且所有字母都是小写,则返回 True,否则返回 False。

示例代码

s1 = "abcdef"
s2 = "Abcdef"
s3 = "abc def"
s4 = "abc123"
s5 = ""

print(s1.islower())  # 输出: True
print(s2.islower())  # 输出: False
print(s3.islower())  # 输出: True
print(s4.islower())  # 输出: True
print(s5.islower())  # 输出: False

代码解析

  • s1 所有字母都是小写,因此返回 True。
  • s2 包含大写字母,故返回 False。
  • s3 所有字母都是小写且包含空格,仍返回 True。
  • s4 包含小写字母和数字,仍返回 True。
  • s5 是空字符串,因此返回 False。

5. str.isupper()

函数介绍

str.isupper() 方法用于判断字符串中的所有字母是否都是大写。如果字符串至少有一个字母且所有字母都是大写,则返回 True,否则返回 False。

示例代码

s1 = "ABCDEF"
s2 = "Abcdef"
s3 = "ABC DEF"
s4 = "ABC123"
s5 = ""

print(s1.isupper())  # 输出: True
print(s2.isupper())  # 输出: False
print(s3.isupper())  # 输出: True
print(s4.isupper())  # 输出: True
print(s5.isupper())  # 输出: False

代码解析

  • s1 所有字母都是大写,因此返回 True。
  • s2 包含小写字母,故返回 False。
  • s3 所有字母都是大写且包含空格,仍返回 True。
  • s4 包含大写字母和数字,仍返回 True。
  • s5 是空字符串,因此返回 False。

6. str.isspace()

函数介绍

str.isspace() 方法用于判断字符串是否只包含空白字符(包括空格、制表符、换行符等)。如果字符串至少有一个字符且所有字符都是空白字符,则返回 True,否则返回 False。

示例代码

s1 = "   "
s2 = "\t\n\r"
s3 = "abc def"
s4 = ""
s5 = " "

print(s1.isspace())  # 输出: True
print(s2.isspace())  # 输出: True
print(s3.isspace())  # 输出: False
print(s4.isspace())  # 输出: False
print(s5.isspace())  # 输出: True

代码解析

  • s1 只包含空格,因此返回 True。
  • s2 只包含制表符、换行符等空白字符,因此返回 True。
  • s3 包含非空白字符,故返回 False。
  • s4 是空字符串,因此返回 False。
  • s5 只包含一个空格,因此返回 True。

7. str.istitle()

函数介绍

str.istitle() 方法用于判断字符串是否为标题化的(即每个单词的首字母都是大写,其他字母都是小写)。如果字符串符合标题化格式,则返回 True,否则返回 False。

示例代码

s1 = "Hello World"
s2 = "Hello world"
s3 = "hello World"
s4 = "Hello  World"
s5 = "Hello\tWorld"
s6 = ""

print(s1.istitle())  # 输出: True
print(s2.istitle())  # 输出: False
print(s3.istitle())  # 输出: False
print(s4.istitle())  # 输出: True
print(s5.istitle())  # 输出: True
print(s6.istitle())  # 输出: False

代码解析

  • s1 每个单词的首字母都是大写,符合标题化格式,因此返回 True。
  • s2 第二个单词首字母不是大写,故返回 False。
  • s3 第一个单词首字母不是大写,故返回 False。
  • s4 两个单词之间有两个空格,仍符合标题化格式,因此返回 True。
  • s5 两个单词之间有制表符,仍符合标题化格式,因此返回 True。
  • s6 是空字符串,因此返回 False。

8. str.isnumeric()

函数介绍

str.isnumeric() 方法用于判断字符串是否只包含数字字符。这与str.isdigit()类似,但str.isnumeric()能够识别更多类型的数字字符,包括罗马数字等。

示例代码

s1 = "123456"
s2 = "123abc"
s3 = "123 456"
s4 = "Ⅻ"  # 罗马数字12
s5 = ""

print(s1.isnumeric())  # 输出: True
print(s2.isnumeric())  # 输出: False
print(s3.isnumeric())  # 输出: False
print(s4.isnumeric())  # 输出: True
print(s5.isnumeric())  # 输出: False

代码解析

  • s1 包含的都是数字,因此返回 True。
  • s2 包含字母,故返回 False。
  • s3 包含空格,故返回 False。
  • s4 包含罗马数字,str.isnumeric() 能够识别,返回 True。
  • s5 是空字符串,因此返回 False。

9. str.isdecimal()

函数介绍

str.isdecimal() 方法用于判断字符串是否只包含十进制数字字符。与str.isdigit()str.isnumeric()不同,str.isdecimal()只能识别普通的十进制数字字符。

示例代码

s1 = "123456"
s2 = "123abc"
s3 = "123 456"
s4 = "Ⅻ"  # 罗马数字

12
s5 = ""

print(s1.isdecimal())  # 输出: True
print(s2.isdecimal())  # 输出: False
print(s3.isdecimal())  # 输出: False
print(s4.isdecimal())  # 输出: False
print(s5.isdecimal())  # 输出: False

代码解析

  • s1 包含的都是十进制数字,因此返回 True。
  • s2 包含字母,故返回 False。
  • s3 包含空格,故返回 False。
  • s4 包含罗马数字,不是十进制数字,因此返回 False。
  • s5 是空字符串,因此返回 False。

总结

通过本文的详细介绍,了解了Python中一些常用的字符串判断函数及其应用场景。这些函数包括str.isalnum()str.isalpha()str.isdigit()str.islower()str.isupper()str.isspace()str.istitle()str.isnumeric()str.isdecimal()。通过示例代码的讲解,希望大家能够掌握这些函数的使用方法,并在实际编程中灵活运用它们来处理字符串。


涛哥聊Python
59 声望37 粉丝