如何删除列表中等于0的数字。Python

2024-04-23 07:16:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我将两个列表添加到一起,如果其中一个添加的元素的总和=0,则必须将其从列表中删除。如果数字超过10,就必须继续计算。到目前为止,我得到的是:

list = [1,2,1]
list2 = [2,18,9]

SumOfLists = [x+y for x,y in zip (list, list2)]

if SumOfLists[2] >= 10:
    SumOfLists[2] -= 10
    SumOfLists[1] += 1
if SumOfLists[1] >= 10:
    SumOfLists[1] -= 10
    SumOfLists[0] +=1


if SumOfLists[0,1,2] == 0:
return SumOfLists[0,1,2] != 0

最后一部分不起作用。我该如何解决这个问题,并让它们打印出来,中间带“/”,而不是像[1,2,3]


Tags: in元素列表forreturnif数字zip
2条回答
new_list = [str(n) for n in old_list if n]
print '/'.join(new_list)

您可以使用一个带条件的列表理解来摆脱0,然后在'/'字符上连接:

mylist = [1,3,0,5]
result = '/'.join([str(x) for x in mylist if x != 0])

相关问题 更多 >