使用if和for循环比较两个列表中的若干项

2024-10-01 22:42:07 发布

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

嗨,我是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部分。 有人帮忙解决这个家庭作业吗


Tags: 代码in列表forinputcounter质量价格
1条回答
网友
1楼 · 发布于 2024-10-01 22:42:07
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)

相关问题 更多 >

    热门问题