python判断字符串是否为空方法总结
方法一:使用字符串长度判断
如果 len(s) ==0 则字符串为空
方法二:isspace判断是否字符串全部是空格
如果s.isspace() 为True 字符串为空,否则非空
方法三:直接判断是否为空
if s == '' 字符串为空,否则非空
方法四:使用strip()函数判断字符串是否为空
strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
先看一个小小的例子,理解一下
a = ' \n this is a test file \t ' #句子有空格和换行以及回车
b = ' \t \n' #句子除了换行空格和回车外没有其他字符
if a.strip(): #如果a.strip()的值为真,打印a,否则为假不打印。
print(a)
if b.strip(): #如果b.strip()的值为真打印b,为假不打印
print(b)
运行结果:
为什么是这样呢?因为a除了空格回车换行外还有字符,所以a.strip()是有值的,因此为真。
而b.strip()已经将空格换行回车去掉,没有任何字符,所以空的序列是假,不打印b。
可以通过布尔表达式下面查看b.strip()的真假:
print(bool(b.strip()))
#打印结果:False
因此判断字符串是否为空可以使用strip()函数,它的逻辑是这样的:
if bool(s.strip()) 为 False,字符串为空,否则为非空
但是这么写太奇怪了,所以一般是这种写法:
if not s.strip():
字符串为空
else:
字符串非空