为了账号安全,请及时绑定邮箱和手机立即绑定

利用for循环 range(1,101)和range(0,101)输出结果不同

我想尝试用for循环:

L = range(1, 101)

for x in L:

    if x%3 == 0:

        print L[x]

输出为: 4,7,11,13,16,19

如果把 range(1,101)改成range(0,101)就可以得出正确结果。 但是把range的初始值改成2,3,4 结果就又不一样了,请问是为什么呢?

正在回答

3 回答

range(1,101)是1-100

range(0,101)是0-100

0 回复 有任何疑惑可以回复我~

range(1,101)是生成从1-100的序列,即L[0]的值为1,所以当你遍历到x==3这个数时,实际上是应该输出L[2];

你只要把最后print L[x]改为L[x-1]就好了。

0 回复 有任何疑惑可以回复我~

range()函数第一个参数是起始点,第二个参数是结束点,生成的序列包含第一个参数,不包含第二个参数。range(1,101)是1-100,而range(0,101)是0-100。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758363    人
  • 解答问题       8967    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

利用for循环 range(1,101)和range(0,101)输出结果不同

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号