2024-04-24 06:34:49 发布
网友
我有一个由以下人员创建的元素列表:
if x > 2: pricePerUnit.append(name) pricePerUnit.append(price/quantity) bestValue = list.count(min(pricePerUnit))
如何在获取值的同时获取每个值前面的元素?你知道吗
最好的办法是以不同的方式构造pricePerUnit列表,将这两个值作为一个元组存储在一起:
pricePerUnit
if x > 2: pricePerUnit.append((name, price / quantity))
这样,当您找到最有价值的项目时,您也可以找到名称。要在列表中找到最小值,现在需要向min提供一个key参数。此key函数应提取要比较的值以查找最小值,在本例中,该值是元组中的第一项(name是元组中的第0项):
min
key
name
bestValueName, bestValue = min(pricePerUnit, key=lambda ppu: ppu[1])
要查找所有具有最佳价值的项目,应先查找最佳价值,然后再查找所有具有该价值的项目:
_, bestValue = min(pricePerUnit, key=lambda ppu: ppu[1]) bestValueItems = filter(lambda ppu: ppu[1] == bestValue, pricePerUnit)
最好的办法是以不同的方式构造
pricePerUnit
列表,将这两个值作为一个元组存储在一起:这样,当您找到最有价值的项目时,您也可以找到名称。要在列表中找到最小值,现在需要向
min
提供一个key
参数。此key
函数应提取要比较的值以查找最小值,在本例中,该值是元组中的第一项(name
是元组中的第0项):要查找所有具有最佳价值的项目,应先查找最佳价值,然后再查找所有具有该价值的项目:
相关问题 更多 >
编程相关推荐