在python中将代码运行了x次后,如何在代码中运行函数的特定部分?

时间:2019-02-22 19:51:36

标签: python iterator iteration

我有一个具有多个功能的代码,该代码的迭代次数为10。

def vectfit_auto(f, s, n_poles=5, n_iter=10,loss_ratio=1e-2, rcond=-1,):

for _ in range(n_iter):
    poles, Zeros, H = vectfit_step(f, s, poles)


    poles_list.append(poles)

我想在 vectfit_step (我的功能之一)中添加一些行,以进行修改:

from iteration number of 5 to 10
do something

我希望代码像以前一样运行,并且我的修改仅适用于从5的迭代数到最后的迭代。 我怎样才能做到这一点? 谢谢

2 个答案:

答案 0 :(得分:1)

如前所述,您可以在循环中包含if语句,只有在主循环运行了一定次数后,才能让它运行。

for i in range(6): # 11 - 5
    if i == 5:
        for i in range(5):
            do_something()
     # main code here

答案 1 :(得分:1)

#i takes values between begin and (end - 1)
for i in range(begin, end):
   do_something()

#In your case start = 5 and end = 11
for i in range(5, 10+1):
   do_something(i)

#You might use _, if you are not interested in the value of i
for _ in range(5, 11):
   do_something()