面试题答案
一键面试nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
for sub_list in nested_list:
if 5 in sub_list:
continue
for num in sub_list:
print(num)
continue语句对边界条件的处理逻辑
- 外层循环:
for sub_list in nested_list
遍历外层列表中的每个内层列表。当遇到包含5
的内层列表时,continue
语句会直接跳过当前的内层列表,进入外层循环的下一次迭代,即处理下一个内层列表。 - 内层循环:如果内层列表不包含
5
,则进入内层循环for num in sub_list
进行元素遍历。因为只有不包含5
的内层列表才会进入此循环,所以不存在continue
语句在这个内层循环中起作用的情况(因为需求是跳过整个内层列表而不是单个元素)。
确保代码正确性的方法
- 测试不同输入:
- 测试包含多个
5
的情况,例如[[1, 5, 3], [4, 5, 6], [7, 5, 9]]
,确保所有包含5
的内层列表都被跳过。 - 测试不包含
5
的情况,例如[[1, 2, 3], [4, 6, 7], [8, 9, 10]]
,确保所有元素都能正常遍历。 - 测试空列表嵌套的情况,例如
[[], [1, 5, 3], []]
,确保空列表不会导致程序出错,并且包含5
的非空列表能正确跳过。
- 测试包含多个
- 代码逻辑审查:
- 确保外层循环正确遍历每个内层列表,并且
continue
语句能正确跳过包含5
的内层列表。 - 确保内层循环只在不包含
5
的内层列表上执行,并且能正确遍历这些列表中的元素。
- 确保外层循环正确遍历每个内层列表,并且