gpt4 book ai didi

python - 为什么范围(开始,结束)不包括结束?

转载 作者:IT老高 更新时间:2023-10-28 12:09:49 25 4
gpt4 key购买 nike

>>> range(1,11)

给你

[1,2,3,4,5,6,7,8,9,10]

为什么不是1-11?

他们只是随意决定这样做还是有一些我没有看到的值(value)?

最佳答案

因为调用 range(0, 10) 更为常见返回 [0,1,2,3,4,5,6,7,8,9]其中包含 10 个元素,等于 len(range(0, 10)) .请记住,程序员更喜欢从 0 开始的索引。

另外,请考虑以下常见代码片段:

for i in range(len(li)):
pass

如果range(),你能看到吗?正好上升到 len(li)这会有问题吗?程序员需要显式减 1。这也符合程序员偏好 for(int i = 0; i < 10; i++) 的普遍趋势。超过 for(int i = 0; i <= 9; i++) .

如果您经常调用以 1 开头的范围,您可能需要定义自己的函数:

>>> def range1(start, end):
... return range(start, end+1)
...
>>> range1(1, 10)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

关于python - 为什么范围(开始,结束)不包括结束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4504662/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com