python for循环范围_python-循环超出范围(0)

这是函数:

def is_sorted(L):

""" (str) -> Bool

Return True iff the L is sorted in nondecreasing order. Otherwise, return

False.

>>> is_sorted([1, 2, 3, 3])

True

>>> is_sorted([3, 2, 1, 3])

False

"""

if len(L) == 0:

return False

for i in range(len(L) - 1):

if L[i] > L[i + 1]:

return False

return True

然后,我在一个字符列表上执行了它,并返回True.但是,我希望收到“列表索引超出范围错误”.谁能解释为什么它会有这种行为?

解决方法:

范围(a,b,s)是[a,a s,a 2 * s …,x]其中x < b.

因此范围(0)-> range(0,0,1)生成一个空列表.这意味着将跳过for循环的内部,返回True

感谢Ali Shahrivarian的编辑

标签:for-loop,range,python

来源: https://codeday.me/bug/20191108/2010131.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值