You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何用while循环去除列表空字符串?异常代码应如何修改?

问题原因
  • 你编写的代码无法得到预期结果的核心问题是while循环的计数变量x没有设置自增逻辑:循环执行过程中x的值始终为初始值0,永远满足x < len(list1)的判断条件,程序会进入死循环,无法执行到后续的print语句。
修复方案

仅需在while循环体内添加一行x += 1,每次循环结束后将计数变量加1,遍历完list1的所有元素后循环就会正常退出:

list1 = ["apple", "pear", "", "strawberry", "orange", "grapes", "", "watermelon"]
list2 = []
x = 0
while x < len(list1):
    if len(list1[x]) > 0:
        list2.append(list1[x])
    x += 1
print(list2)

运行后输出结果为['apple', 'pear', 'strawberry', 'orange', 'grapes', 'watermelon'],符合预期。

内容的提问来源于stack exchange,提问作者yopangyo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 22:36:03