检查空字符串时,“ == False”和“ is not”之间有区别吗?

发布于 2021-01-29 17:31:38

其他地方读到了,最优雅的方法来检查Python中的空字符串(例如,假设它是一个名为的字符串response)是:

if not response:
    # do some stuff

原因是字符串可以评估为布尔对象。

所以我的问题是,下面的代码说同样的话吗?

if response == False:
    # do some stuff
关注者
0
被浏览
45
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    如前所述,存在区别。

    not response如果检查bool(response) == False或失败,如果len(response) == 0因此它是检查的最佳选择,如果事情是空的,None0False。请参阅python文档,了解什么是“
    Falsy”

    另一个变体仅检查是否,response == False并且仅 当和时才是 这种情况response is False。但是一个空字符串is not False



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看