Gia*_*mPy 4 python boolean-expression
我想知道这两段代码之间有什么区别:
while choice != "y" and choice != "n": while not choice == "y" and not choice == "n":
pok*_*oke 9
第一个使用对象的__ne__方法,而第二个使用对象的__eq__方法并否定其结果.
__ne__
__eq__
虽然两种方法都应该对结果进行配对,但这a == b意味着not a != b实际上并不需要或强制实施.
a == b
not a != b
比较运算符之间没有隐含的关系.事实x==y并非暗示这x!=y是错误的.因此,在定义时__eq__(),还应该定义__ne__()操作符将按预期运行.
x==y
x!=y
__eq__()
__ne__()
在你的情况下,choice字符串在哪里(我猜?)它没有真正的区别.内置类型都确保了==和之间的反比关系!=.所以唯一的区别就是在查看代码时它是多么容易理解.我个人更喜欢更简洁的第一版.
choice
==
!=
归档时间:
13 年,5 月 前
查看次数:
852 次
最近记录:
8 年,3 月 前