动漫网站模板下载,景区网站建设策划,自己免费做网站(二),深圳高端集团网站建设公司Python_短路计算.md 一、概述二、原理说明三、and的短路应用四、or的短路应用 一、概述
Python中#xff0c;短路计算#xff08;Short-circuit evaluation#xff09;指的是在布尔运算#xff08;and 或 or#xff09;中#xff0c;当根据已有的条件能够确定整个表达式… Python_短路计算.md 一、概述二、原理说明三、and的短路应用四、or的短路应用 一、概述
Python中短路计算Short-circuit evaluation指的是在布尔运算and 或 or中当根据已有的条件能够确定整个表达式的最终结果时剩余的条件将不再被评估。这也被称为最小求值Minimal Evaluation。
短路计算可以用来将多次条件判断写在一行内使代码变得简洁优雅。
二、原理说明
and布尔计算中遇到一个False立即停止or布尔计算中遇到一个True立即停止
示例
# 定义True函数和False函数
def checkTrue(param):print(fcheckTrue return True, param{param})return True
def checkFalse(param):print(fcheckFalse return True, param{param})return Falseif checkFalse(1x10) and checkTrue(a1) and checkTrue(b1):print(fand end. result{True})
else:print(fand end. result{False})if checkTrue(1x10) or checkFalse(a1) or checkFalse(b1):print(for end. result{True})
else:print(for end. result{False})# 执行结果可以见到and的第2、3个条件判断未执行、pr的第2、3个条件判断也未执行
checkFalse return True, param1x10
and end. resultFalse
checkTrue return True, param1x10
or end. resultTrue三、and的短路应用
示例
给定一个下标idx和一个值val判定列表nums的第idx个元素是否等于val
def checkVal(nums, idx, val):return 0idxlen(nums) and nums[idx]val四、or的短路应用
示例
给定一个下标idx和一个值val判定列表nums的第idx个元素是否等于val
def checkVal(nums, idx, val):return not (idx0 or idxlen(nums) or nums[idx]!val)may the odds be ever in your favor ~