我正在使用以下代码。
for x in range(100):
print('inside 1st loop')
for y in range(25,60):
print('inside second loop')
if y >= x:
print ('y is now greater than x')
是否有可能在内部for循环中满足if条件后,外部循环会在运行5个内部循环后自行中断。
实际代码如下:
for i in range(len(a1)):
title_derived = []
print(i)
for j in range(len(b1)):
#print(b1.iloc[i][10], a1.iloc[j][3])
if b1.iloc[j][10] == a1.iloc[i][3]:
print('1st if ' + str(j))
print (b1.iloc[j][1], a1.iloc[i][11], b1.iloc[j][5])
if (((pd.to_datetime(b1.iloc[j][1]) <= pd.to_datetime(a1.iloc[i][11]) <= pd.to_datetime(b1.iloc[j][5]))) or ((pd.to_datetime(b1.iloc[j][1]) <= pd.to_datetime(a1.iloc[i][8]) <= pd.to_datetime(b1.iloc[j][5])))) :
print('2nd if' + str(j))
title_derived.append(b1.iloc[j][15])
print('inserted ' + b1.iloc[j][15] + ' in ' + str(i) + ' th record ')
a1.iat[i,65] = title_derived
现在,我有两个数据帧,每个记录在第一个(大约10000条记录)中查找其他数据帧(40000条记录)中的每条记录。有时可能有大约4-5个连续条目符合条件。
所以,一旦条件在第二个循环中得到满足,我想完成五次迭代并打破它。
答案 0 :(得分:0)
def inner_loop_function(outer_loop_variable):
for y in range(25,60):
if y<=first_loop_var:
return True
return False
for x in range(0, 100):
print("1st Loop", x)
var = inner_loop_function(x)
if var == True:
# Breaking outer Loop
break
答案 1 :(得分:0)
尝试添加状态变量以指示内循环何时完成。
请注意,自25> 0以来,您的示例将立即结束。
done = False
for x in range(100):
if done is True:
print('Inner loop is done')
break
print ('inside 1st loop')
print x
for y in range(25,60):
print ('inside second loop')
print y
if y >= x:
print ('y is now greater than x')
done = True
break