如何在Python中检查字符串是否为空

25

我有一个cookie值,是通过Python的POST调用返回的。
我需要检查cookie值是否为空或null。 因此,我需要一个if条件的函数或表达式。 如何在Python中实现这一点? 例如:

if cookie == NULL

if cookie == None

顺便提一下,cookie是存储值的变量。


1
你正在使用哪个Web框架? - Janne Karila
你需要描述一下获取cookie值所使用的函数:这将告诉我们要测试什么(None值?仅空字符串?)。 - Eric O. Lebigot
2个回答

28

试试这个:

if cookie and not cookie.isspace():
    # the string is non-empty
else:
    # the string is empty

以上考虑了字符串为 None 或仅由空格组成的情况。


1
使用 cookie.isspace()比使用strip更高效。 - John La Rooy

5
在Python中,bool(sequence)如果序列为空则为False。由于字符串是序列,因此可以这样使用:
cookie = ''
if cookie:
    print "Don't see this"
else:
    print "You'll see this"

如果你有一个变量 - cookie = "null",那么 bool(cookie) 返回 True。 - suprita shankar
if cookieif cookie == "" 之间的功能差异是什么? - NoName
尽管答案对于绝大多数情况都是有效的,但 OP 想要检查字符串是否为 None 或为空(包含空格),例如 ' ''\n\t' - StickySli

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接