如何将Python代码末尾的for循环改写为符合教授要求的while循环
代码修改方案
你可以通过索引遍历的方式将末尾的for循环替换为while循环,修改后的完整代码如下:
make_string = [] while True: user_input = int(input()) make_string.append(int(user_input)) if len(make_string) > (make_string[0] + 1): break end_num = make_string[-1] make_string.pop(0) make_string.pop(-1) # 以下为替换for循环的while实现 i = 0 while i < len(make_string): val = make_string[i] if val <= end_num: # 如果需要严格匹配示例无空格的输出格式,可改为end="," print(val, end=", ") i += 1
实现逻辑
- 初始化索引变量
i = 0,对应列表第一个元素的位置 while循环的终止条件设为i < len(make_string),遍历完所有列表元素后自动停止- 每次循环中取出当前索引对应的元素做阈值判断,符合条件则输出
- 单次循环结束后执行
i += 1,切换到下一个元素的索引位置
内容的提问来源于stack exchange,提问作者davevanian
相关产品推荐
相关产品推荐

