list1 = ["apple", "pear", "", "strawberry", "orange", "grapes", "", "watermelon"]
list2 = []
x = 0
while x < len(list1):
if len(list1[x]) > 0:
list2.append(list1[x])
print(list2)
我试图运行这段代码,但它似乎不起作用。如果不使用列表理解或其他方法,我应该如何修改此代码?
最佳答案
更新:刚刚注意到您不想使用不同的方法,所以这个答案仅供 future 的访问者使用。
您可以在一行中实现相同的功能:
list2 = list(filter(None, list1))
请注意,这还将删除等于 0
、False
或 None
的元素。更接近的实现可能是列表理解:
list2 = [i for i in list1 if i != ""]
https://stackoverflow.com/questions/69937640/