遍历两个列表

时间:2020-06-05 08:49:29

标签: python loops iteration selection-sort

我想遍历2个列表,并比较同一列表中的元素以查看是更高还是更低。 像

high = [5,7,8,4,2 ... 3] 低= [16,4,8,1,48 ... 4]

如果数字大于前一个数字,则将其添加到high_list 如果数字低<前一个数字,则将其添加到low_list

输出应为

high_list = [5,7,8] low_list = [16,4,1]

def iter_num (high,low):
    some_listH = []
    some_listL = []
    for H,L in zip(high,low):
        x = H +1
        if H > H[x]:
            H = H[x]
            some_listH.append(H)
        if L < L[x]:
            L = L[x]
            some_listL.append(L)
        return some_listH, some_listL

1 个答案:

答案 0 :(得分:0)

您写了:

 H > H[x]

H要么是列表的元素,要么是列表。两者都不是。

这两个列表基本上彼此无关。如果不能保证它们的长度相同,我不建议在同一循环中处理它们。

这应该针对一个列表执行您想要的操作。您可以从中弄清楚如何处理第二个列表,将其放入函数中,等等。

list = [5,7,8,4,2,1,1,1,3]
some_listL = []

some_listL.append(list[0])
for x, y in zip(list, list[1:]):
    if y > x:
        some_listL.append(y)

print (some_listL)

要在应得的信用额中给予信用,我从here

了解了如何做到这一点