Python 如何单独处理循环索引

Python 如何单独处理循环索引,python,Python,希望以不同的方式处理不同的索引范围 for i in range(0,10): [0,3]: print('hello') [3,5]: print('hi') [5,10]: print('end')``` 您需要的是条件表达式,请阅读更多有关它的信息 编辑: 这应该达到你想要的 def loop_ranges(lb,ub): for i in range(lb,ub):

希望以不同的方式处理不同的索引范围

for i in range(0,10):
        [0,3]:
           print('hello')
        [3,5]:
          print('hi')
        [5,10]:
          print('end')```

您需要的是条件表达式,请阅读更多有关它的信息

编辑:

这应该达到你想要的

def loop_ranges(lb,ub):
    for i in range(lb,ub):
        if i<3:
           print('hello')
        elif i >=3 and i<=5:
          print('hi')
        else:
          print('end')


for i in range(len(list)-2):
   loop_ranges(list[i],list[i+1])



您可以重用范围函数


  for i in range(0,10):
      if i in range(0,3):
           print('hello')
      if i in range(3,5):
          print('hi')
      if i in range(5,10):
          print('end')


但是,0比这稍微复杂一点,我真正需要的是基于索引的更新范围。范围函数会自动更新,因此对于I的每次迭代,值将增加1。如果要控制整个范围函数,请定义一个函数,并为for循环的下限和上限引入两个参数。然后可以调用此函数。说明:范围值位于列表[3,2,5]中,因此列表处理的[0]范围0,2与[0]的[1]和[2]不同,它应该是范围0,3和[1]->范围0,2和[2]->范围0,5。我说得对吗?您如何通过这种方式知道循环的上限和下限?下一个范围从预览的左侧开始。请澄清您的问题、您尝试了什么以及什么不起作用。

  for i in range(0,10):
      if i in range(0,3):
           print('hello')
      if i in range(3,5):
          print('hi')
      if i in range(5,10):
          print('end')