Python while循环与if条件下追加数组仅输出[-1]问题求解
Python代码问题排查
错误原因
- 数组
dgt的初始化语句dgt = []放在了if n < 0的判断分支内部,每次n为负数时都会清空原有数组再追加当前n值,最终仅保留了最后一个符合条件的负数-1。
修复方法
将dgt = []移动到while循环外部,在循环开始前完成数组初始化,修改后代码如下:
n = -12 dgt = [] while n < 15: if n < 0: dgt.append(n) n = n+1 print(dgt)
运行验证
修改后代码运行输出结果为[-12, -11, -10, -9, -8, -7, -6, -5, -4, -3, -2, -1],符合收集所有负数的预期。
内容的提问来源于stack exchange,提问作者Butterfly Fiziks
相关产品推荐
相关产品推荐

