是否可以仅使用按位操作来检查数字是否介于两个数字之间?
在Python中,你可以做这样的事情。
if 10000 <= number <= 30000:
pass
最终,您可以使用循环来执行检查范围所需的任何数学运算或比较运算。我想知道是否有更优雅的解决方案。
答案 0 :(得分:2)
不,没有更好的&#34;优雅&#34;解决这个问题。让我们来解决一些可能的问题。
这难以理解吗?没有丝毫。但是,使用按位运算的替代方案,假设它是可能的,将不会比这更具可读性或优雅性。
让我们做一点timeit
测试:
%timeit 10000 <= 20000 <= 30000
10000000 loops, best of 3: 92.8 ns per loop
这需要93 纳秒。就处理器生命周期而言,这几乎没有。如果您的代码存在任何瓶颈,那么这肯定不会成为其中之一。