使用相等运算符执行Pycharm与None的比较

问题描述 投票:1回答:2

我正在使用python 3.6和pycharm。

我的一行代码说:

If oim.sent != None:

Pycharm给出了以下措辞非常强烈的警告:

这种类型的比较应始终使用'is'或'is not'来完成,而不是等于运算符。

但是,我使用这行代码来辨别None和值为False的值 - 我是否正确地以这种方式写这一行,或者你应该永远不使用相等运算符吗?

编辑:

我误解了警告。我认为它指示我使用if not oim.sent:当然不会在NoneFalse之间辨别 - 但是,正如答案指出正确的表达将是if oim.sent is not None:

python pycharm operators nonetype
2个回答
2
投票

这只是一个警告,因为你没有遵循python准则。你的代码运行正常。如果你愿意,你最好使用:

if oim.sent is not None:


2
投票

但是,您当然可以使用!= None

if oim.sent is not None:

更快,更惯用的Python,所以每个人都知道你知道你在做什么;-)

© www.soinside.com 2019 - 2024. All rights reserved.