如何检查字符串是否为空?

新手上路,请多包涵

Python 是否有类似于空字符串变量的东西,您可以在其中执行以下操作:

 if myString == string.empty:

无论如何,检查空字符串值的最优雅的方法是什么?我发现硬编码 "" 每次检查空字符串都不太好。

原文由 Joan Venge 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 306
2 个回答

空字符串是“假的”( python 2python 3 参考),这意味着它们在布尔上下文中被认为是假的,所以你可以这样做:

 if not myString:

如果您知道您的变量是一个字符串,那么这是首选方法。如果您的变量也可以是其他类型,那么您应该使用:

 if myString == "":

有关在布尔上下文中为假的其他值,请参阅有关 真值测试 的文档。

原文由 Andrew Clark 发布,翻译遵循 CC BY-SA 4.0 许可协议

来自 PEP 8 ,在 “编程建议”部分

对于序列(字符串、列表、元组),使用空序列为假的事实。

所以你应该使用:

 if not some_string:

要么:

 if some_string:

澄清一下,在布尔上下文中,序列被 评估FalseTrue 是否为空。它们 不等于 FalseTrue

原文由 zenpoy 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题