用if和for循环比较两个列表中的几个项目

时间:2019-04-02 20:07:03

标签: python list append cmp

嗨,我是python的新手。 我试图为我的作业写一个代码,首先要输入一个数字,以表明要输入多少个输入。我有两个列表(p表示价格,q表示质量),每行输入包括两个数字(第一个数字是价格,第二个数字是质量),像这样:22 31

n = int(input())
p,q= [],[]
counter = 0
for i in range(n):
    laptopPrice,laptopQuality = [int(x) for x in input().split()]
    p.append(laptopPrice) 
    q.append(laptopQuality)

我想分别比较每个列表的每个项目,如果p [0]小于p [1]且q [0]大于q [1],程序将显示“您是对的”。 我写了一个代码,但我无法解释代码中的if部分。 有没有人可以帮助解决这一作业?

1 个答案:

答案 0 :(得分:0)

number_of_laptops = int(input())
list_of_prices = []
list_of_qualities = []

for i in range(0,number_of_laptops):
    inp = input()
    numbers = []
    numbers = [int(s) for s in inp.split() if s.isdigit()]
    list_of_prices.append(numbers[0])
    list_of_qualities.append(numbers[1])

def find_better_lp(number_of_laptops):

if number_of_laptops == 0:
    return print("empty list")

for i in range(0,number_of_laptops):
    for j in range(0,number_of_laptops):      
        if((list_of_prices[i] <= list_of_prices[j]) and i != j):
            if(list_of_qualities[i] >= list_of_qualities[j]):
                return print("happy irsa")

return print("poor irsa")

find_better_lp(number_of_laptops)