python检查字符串是不是为空-这是优雅的方式吗?

Posted

技术标签:

【中文标题】python检查字符串是不是为空-这是优雅的方式吗?【英文标题】:python check string for emptieness - is this the elegant way [duplicate]python检查字符串是否为空-这是优雅的方式吗? 【发布时间】:2013-09-11 08:18:33 【问题描述】:
if var is not None and var !="" and var !=" ":
   # todo

我可以这样写吗?:

if var: 
   # todo

var 只是 String 类型。

【问题讨论】:

@aug 不是因为 OP 也希望空格也算作空字符串。 【参考方案1】:

如果你想过滤掉只有空格的字符串(" "):

if var and var.strip():
    # ...

因为如果用作谓词,包含空格的字符串将被评估为 True:

>>> bool("")
False

>>> bool("  ")
True

【讨论】:

我认为if var.strip(): 是等价的。 @ShashankGupta:如果var 可能是None,则不会。 @MartijnPieters 好点 :) 虽然很明显如果' 'only 应该被认为是假的空白字符串,而' ' * 2'\t' 应该被认为是真的,如代码中的问题,那么答案就不同了:-)

以上是关于python检查字符串是不是为空-这是优雅的方式吗?的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript,检查嵌套对象属性是不是为空/未定义的优雅方法[重复]

Python:检查列表中至少一个正则表达式是不是与字符串匹配的优雅方法

如果不为空,检查查询字符串参数值的最优雅方法是啥?

检查UITextField是否为空的优雅方法[重复]

如何在python中检查字符串是不是为空[重复]

为啥要在 Python 中隐式检查是不是为空? [关闭]