Python在此循环开始时获得最大循环

时间:2014-07-10 09:57:57

标签: python loops

示例:

i=0
while i<=30:
  function that needs the maximum of i
  do something
  i+=1

是否可以在第一次循环运行时使i的最大值(在此示例中为30)可用。如果是这样 - 如何。到目前为止还没找到任何东西......

2 个答案:

答案 0 :(得分:1)

使用while循环并手动递增可以使用for循环的值 - 后者更易于阅读且不易出错,这不是一个好主意:

max_i = 30
for i in range(max_i+1):
    # code here can access both 'i' and 'max_i'

答案 1 :(得分:-1)

你问的问题没有简单的解决方案。 我不确定你为什么不能做,说:

i=0
imax = max_of_i()
while i<=imax:
   function that needs the maximum of i which is now imax
   do something
   i+=1

但我会幽默你。所以你总是可以这样作弊:

i=0
while i<=30:
    i+=1
imax = i 
i = 0
while i<=imax:
   function that needs the maximum of i which is now imax
   do something
   i+=1

希望这可以帮到你。