This question already has answers here:
Is there a logical difference between 'not ==' and '!= (without is)
(3个答案)
7年前关闭。
我想知道这两段代码之间的区别是什么:
(3个答案)
7年前关闭。
我想知道这两段代码之间的区别是什么:
while choice != "y" and choice != "n":
while not choice == "y" and not choice == "n":
最佳答案
第一个使用对象的 __ne__
方法,第二个使用对象的 __eq__
方法并取反结果。
虽然这两种方法都应将其结果配对,所以a == b
暗示not a != b
,但这实际上不是必需的也不是强制性的。
在您的情况下,choice
是一个字符串(我猜是吗?),它并没有真正的区别。内置类型均确保==
和!=
之间的逆关系。因此,唯一的区别是,在查看代码时,它实际上是多么易于理解。我个人更喜欢更简洁的第一个版本。
关于Python not和!=之间的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16650351/
10-10 18:46