python基础练习题:独家"或"(xor)逻辑运算符【难度:0级】:
Exclusive"或"(xor)逻辑运算符
概述
在某些脚本语言(如PHP)中,存在逻辑运算符(例如
&&
,
||
,
和
,
或
等)称为"独家或"(因此称为此习题).独家或评估两个布尔.如果** 两个表达式中只有一个为真,则返回true,否则返回false.例如:
false xor false == false //因为两者都是假的
true xor false == true //两个表达式中只有一个是真的
false xor true == true //两个表达式中只有一个是真的
true xor true == false //两者都是真的.如果两个表达式中的其中一个表达式为true,则"xor"仅返回true.
任务
由于我们无法在Javascript中定义关键字(好吧,至少我不知道该怎么做),你的任务是定义一个函数
xor(a,b)
其中a和b是两个表达式待评估.您的
xor
函数应具有上述行为,如果** 两个表达式中只有一个计算为true,则返回true,否则返回false.
编程目标:
def xor(a,b):
#your code here
测试样例:
Test.describe("Your 'xor' function/operator")
Test.it("should work for the four basic cases described above")
Test.assert_equals(xor(False, False), False, "False xor False == False")
Test.assert_equals(xor(True, False), True, "True xor False == True")
Test.assert_equals(xor(False, True), True, "False xor True == True")
Test.assert_equals(xor(True, True), False, "True xor True == False")
Test.it("should work properly when nested")
Test.assert_equals(xor(False, xor(False, False)), False)
Test.assert_equals(xor(xor(True, False), False), True)
Test.assert_equals(xor(True, xor(True, True)), True)
Test.assert_equals(xor(xor(False, False), xor(False, False)), False)
Test.assert_equals(xor(xor(False, False), xor(False, True)), True)
Test.assert_equals(xor(xor(True, False), xor(False, False)), True)
Test.assert_equals(xor(xor(True, False), xor(True, False)), False)
Test.assert_equals(xor(xor(True, True), xor(True, False)), True)
Test.assert_equals(xor(xor(True, xor(True, True)), xor(xor(True, True), False)), True)
最佳答案(多种解法):
更多关联题目:
python进阶练习题:Dbftbs Djqifs【难度:2级】–景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
Python进阶练习题:粘土鸽子射击【难度:2级】–景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
Python基础练习题:数值回文#1【难度:1级】–景越Python编程实例训练营,Python自学,Python进阶必备良品
免责申明
本博客所有编程题目及答案均收集自互联网,主要用于供网友学习参考,如有侵犯你的权益请联系管理员及时删除,谢谢
题目收集至https://www.codewars.com/
https://www.codewars.com/kata/exclusive-or-xor-logical-operator