python - python中if多个条件的简化
问题描述
我想在一个矩形框中挑选出一些项目,其轴限制为 (xmin, xmax, ymin, ymax, zmin, zmax)。所以我使用以下条件,
if not ((xi >= xmin and xi <= xmax) and (yi >= ymin and yi <= ymax) and (zi >= zmin and zi <= zmax)):
expression
但我认为python有一些简洁的方式来表达它。有人可以告诉我吗?
解决方案
运算符链接的典型案例:
if not (xmin <= xi <= xmax and ymin <= yi <= ymax and zmin <= zi <= zmax):
它不仅简化了比较,允许删除括号,同时保持可读性,而且中心参数只计算一次,这在与函数的结果进行比较时特别有趣:
if xmin <= func(z) <= xmax:
func
(所以如果有副作用,它不等于 2 次比较)
推荐阅读
- javascript - TypeError:chargebee.subscription.list 不是函数
- r - 将值添加到数据集中不存在的图例
- algorithm - 找到最小权重的 Dijkstra 树
- javascript - 在过滤 onClick vs. Submit 中反应清除输入字段返回语句逻辑
- amazon-web-services - 您如何在 Amazon 中使用 ResponseCacheControl URL 参数?
- python - 用 Beautiful Soup 选择 div
- javascript - 防止在Vue.js中@click上的锚标记重新加载页面
- javascript - 如何将所有快速页面路由到唯一页面(没有 html 扩展名)
- javascript - 如何通过标题和描述找到类似的公告?
- node.js - 我在 azure VM 上的反应应用程序没有出现