为什么python最后一个元素下标是负一_python的list的下标为-1代表最后一个元素是否会导致难以发现的运行错误?...

我觉得吧,如果仅仅针对负数下标这一个语言特征来说,确实有可能导致难以发现的运行错误,有时候也确实不能觉得代码写的熟练了就一定不会犯错误,毕竟程序员也是人啊,孰能无过。

但是就python的整体语法设计来说,这个问题却能得到一定程度的规避。为什么这么说呢,举个简单的例子,比如我们遍历list一般怎么做呢?“for item in xx_list“,完全没有用到下标哈,如果一定用下标呢?“for i in range(len(xx_list))”,也不会出现问题。而需要使用负数下标的时候,大都是明确知道需要使用第几个元素的时候才这么干的,于是在写这样的代码的时候,也会格外注意到下标的范围。相比之下,对于C/C++这样的语言,一些循环的边界控制会灵活的多,于是一犯糊涂更容易出现下标越界情况。因此,从python语言的整体设计上看,不会带来太大问题。

当然,万事没有绝对,习惯使用其他语言(如C/C++,Java)的开发者,在初次使用python的时候可能还经常会以那些语言的思路写python程序,于是编程风格可能是混合的,便有可能出现问题。所以,使自己写出的代码更‘python’化,你会渐渐发现很多问题都被规避掉了。

总的来说,我相信python的设计者对于整个语言的设计是合理的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值