在python中将列表与while循环进行比较

在python中将列表与while循环进行比较,python,while-loop,Python,While Loop,下面的代码是将相同索引位置的两个列表中的较大数量列成一个列表。 如何用while循环而不是for循环重写此代码 使用zip和列表理解: 使用时: 使用zip和列表理解: 使用时: 一种方法是用while a = [7, 12, 9, 14, 15, 18, 12] b = [9, 14, 8, 3, 15, 17, 15] big = [] i = 0 while i < len(a): big.append(max(a[i], b[i])) i += 1 print bi

下面的代码是将相同索引位置的两个列表中的较大数量列成一个列表。 如何用while循环而不是for循环重写此代码

使用zip和列表理解:

使用时:

使用zip和列表理解:

使用时:


一种方法是用while

a = [7, 12, 9, 14, 15, 18, 12]
b = [9, 14, 8, 3, 15, 17, 15]
big = []
i = 0
while i < len(a):
    big.append(max(a[i], b[i]))
    i += 1
print big

一种方法是用while

a = [7, 12, 9, 14, 15, 18, 12]
b = [9, 14, 8, 3, 15, 17, 15]
big = []
i = 0
while i < len(a):
    big.append(max(a[i], b[i]))
    i += 1
print big
您可以使用pop每次对两个列表中的第一项进行清除,直到a或b的计算结果为真,它包含以下项:

In [15]: while a:
            big.append(max(a.pop(0),b.pop(0)))
   ....:     

In [16]: big
Out[16]: [9, 14, 9, 14, 15, 18, 15]
您可以使用pop每次对两个列表中的第一项进行清除,直到a或b的计算结果为真,它包含以下项:

In [15]: while a:
            big.append(max(a.pop(0),b.pop(0)))
   ....:     

In [16]: big
Out[16]: [9, 14, 9, 14, 15, 18, 15]
您可以尝试以下方法:

a = [7,12,9,14,15,18,12]
b = [9,14,8,3,15,17,15]
big = []
i=0
while i<len(a):
    if a[i]<b[i]:
        big.append(b[i])
        i+=1
    else:
        big.append(a[i])
        i+=1
print(big)
您可以尝试以下方法:

a = [7,12,9,14,15,18,12]
b = [9,14,8,3,15,17,15]
big = []
i=0
while i<len(a):
    if a[i]<b[i]:
        big.append(b[i])
        i+=1
    else:
        big.append(a[i])
        i+=1
print(big)
您也可以尝试使用zip和列表理解,如下所示:

a = [7,12,9,14,15,18,12]
b = [9,14,8,3,15,17,15]
big = [max(c) for c in zip(a,b)]
print big
输出:

[9, 14, 9, 14, 15, 18, 15]
您也可以尝试使用zip和列表理解,如下所示:

a = [7,12,9,14,15,18,12]
b = [9,14,8,3,15,17,15]
big = [max(c) for c in zip(a,b)]
print big
输出:

[9, 14, 9, 14, 15, 18, 15]