如何在Python中检查一个字符串是否只包含空格字母?
一个字符串是由一组字符组成,可以代表一个单词或一个完整的句子。在Python中,没有必要使用数据类型说明符显式地声明变量,你可以直接将它们赋给一个文字。因此,与Java等其他技术相比,使用Python字符串很容易。
为了操作和访问字符串,Python包含了许多内置的函数和方法。一个字符串是String类的一个对象,因为在Python中,所有的东西都是一个对象,所以它有多个方法。
**在本文中,我们将找出如何在Python中检查一个字符串是否只包含空格字母。 **
使用isspace()方法
实现这个的一种方法是使用内置字符串库的 isspace() 方法。这个方法告诉我们字符串是否只包含空格或是否存在其他字符。如果给定的字符串只由空格组成,则该方法返回true,否则返回false。即使字符串是由像\t、\n这样的字符组成的,该方法也会返回true。
示例
在下面的程序中,我们取3个不同的字符串,并使用 isspace() 方法查找它们是否只包含空格。
str1 = " "
str2 = " DAS"
str3 = "\n\t"
print("检查给定的字符串'",str1,"'是否只包含空格")
print(str1.isspace())
print("检查给定的字符串'",str2,"'是否只包含空格")
print(str2.isspace())
print("检查给定的字符串'",str3,"'是否只包含空格")
print(str3.isspace())
输出
上述示例的输出为,
('检查取定']
的字符串-', ' ', " '是否只包含空格")
True
('检查取定的字符串-', ' DAS', "'是否只包含空格")
False
('检查取定的字符串-', '\n\t', "'是否只包含空格")
True
使用正则表达式
你也可以使用正则表达式来检查一个给定的字符串是否只是一个空格。正则表达式“ ^\s*$ ”是在re库的search方法中使用的,如果字符串只包含空格,它返回true,如果字符串包含其他字符,它返回false。
示例
在下面给出的程序中,我们取三个不同的字符串,并使用正则表达式“ ^\s*$ ”以及re库的search方法找出它们是否只包含空格。
import re
str1 = " "
str2 = " DAS"
str3 = "\n\t"
print("检查给定的字符串'",str1,"'是否仅包含空格")
if not str1 or re.search("^\s*", str1): print('true') else: print('false') print("检查给定的字符串'",str2,"'是否仅包含空格")
if not str2 or re.search("^\s*", str2):
print('true') else: print('false')
print("检查给定的字符串'",str3,"'是否仅包含空格")
if not str3 or re.search("^\s*$", str3):
print('true')
else:
print('false')
输出结果
以上示例的输出结果为:
("检查给定的字符串'", ' ', " '是否仅包含空格")
true
false
("检查给定的字符串'", '\n\t', "'是否仅包含空格")
true
使用len()函数
Python中的 len() 函数计算并返回当前对象中元素的数量。首先,使用这个函数找出给定字符串的长度。如果长度为0,则意味着字符串为空或仅包含空格字母,否则,该字符串包含其他字符。
示例
在下面的示例中,我们使用 len() 方法检查给定的字符串是否为空。
str1 = " "
str2 = " DAS"
str3 = ""
print("检查给定字符串'",str1,"'是否为空")
if len(str1) == 0:
print('真')
else:
print('假')
print("检查给定字符串'",str2,"'是否为空")
if len(str2) == 0:
print('真')
else:
print('假')
print("检查给定字符串'",str3,"'是否为空")
if len(str3) == 0:
print('真')
else:
print('假')
输出结果
上面示例的输出结果为,
("检查给定字符串'",' ', "'是否为空")
假
("检查给定字符串'", ' DAS', "'是否为空")
假
("检查给定字符串'", '', "'是否为空'")
真
使用strip()函数
另一种删除空格的方式是使用内置的strip()函数。该函数删除字符串中存在的所有不必要的空格。要查找字符串是否仅包含空格,请将剥离的字符串与原始字符串进行比较,如果两者相同,则给定字符串仅包含空格或为空。
示例
在下面的程序中,我们使用strip()方法检查给定的字符串是否仅包含空格,并将其与实际字符串进行比较。
import re
str1 = " "
str2 = " DAS"
str3 = ""
print("检查给定字符串'",str1,"'是否仅包含空格")
if str1 and str1.strip():
print('假')
else:
print('真')
print("检查给定字符串'",str2,"'是否仅包含空格")
if str2 and str2.strip():
print('假')
else:
print('真')
print("检查给定字符串'",str3,"'是否仅包含空格")
if str3 and str3.strip():
print('假')
else:
print('真')
输出结果
上面示例的输出结果为,
("Checking whether the given string'", ' ', "'contains only spaces")
true
("Checking whether the given string'", ' DAS', "'contains only spaces")
false
true
极客教程