擅长:python、mysql、java
<p>我找到了一个很好的方法:</p>
<pre><code>import itertools as it
il = 100
results = []
def fun1():
active = False
start = None
for i in range(il):
condition = i % 9 == 0
if not active and condition:
active = True
start = i
condition2 = i % 13 == 0
if active and condition2:
active = False
# do some additional calculations...
results.append((start, i))
if active:
# do some additional calculations...
results.append((start, il))
return results
def fun2():
a=b=0
while b<il:
yield (a,b)
b=b+13
a=a+9
while a<=b-13:
a=a+9
if a<il:
yield (a,il)
print fun1()
print
print [(a,b) for (a,b) in fun2()]
</code></pre>
<p>请检查代码中il的不同值,并在使用之前将其与您的函数进行比较。你知道吗</p>