为什么范围具有"计数"功能?

Pas*_*ten 3 python range

除非我弄错了,否则范围只能包含唯一的数字.所以,一个数字可能在或不在.

我想只有当我们想要将一个范围作为许多可接受类型之一(动态)传递给某个函数时才有意义.

然而,似乎如果它会超过整个范围来计算一个数字,那将是非常低效的.

我尝试将它与" in" 进行比较,但在我的机器上看起来它们的时间相同.那可能是对的吗?

Mar*_*ers 5

因为range()对象符合SequenceABC,而ABC有一个.count()方法.

换句话说,它是为了完整性而存在的,因此该对象有资格作为序列.

它不必遍及整个范围,因为很容易计算出数字是否是序列的一部分,请参阅为什么`1000000000000000在范围内(1000000000000001)`这么快?