gpt4 book ai didi

python - 查找排名最高的值

转载 作者:行者123 更新时间:2023-11-30 23:36:57 25 4
gpt4 key购买 nike

我有类别

Rank   Fruits:      Vegetable:    Years:
1 Apple Lettuce 1900-1909
2 Pineapple Carrot 1900-1909
3 Orange Potato 1900-1909
4 Banana Beans 1900-1909
Rank Fruits: Vegetable: Years:
1 Banana Carrot 1910-1919
2 Orange Potato 1910-1919
3 Apple Beans 1910-1919
4 Pineapple Lettuce 1910-1919

这是我上面给出的数据。我想找到水果香蕉何时最受欢迎(也就是排名最接近 1 的时间)。我还需要找到 Carrot 何时最受欢迎。

例如,我需要它来显示胡萝卜的结果是 1910-1919 年,香蕉的结果是 1910-1919 年。

我已经在这个问题上折腾了好几个小时了。我尝试将它们放入集合中并使用键和值对其进行配置,但我所做的一切都不起作用。我非常感谢您的帮助。谢谢!

def getHighRank(data):
nameSet=()
nameList=[]
for names in data:
nameList.append[1]
nameList.append[2]

这就是我到目前为止所拥有的。我尝试将水果和蔬菜放入一个列表中。我正在考虑将其转换为一套,但我现在对做什么一无所知。

最佳答案

>>> d = {}
>>> with open('test.txt') as f:
print f.read() # shows the file structure


Rank Fruits: Vegetable: Years:
1 Apple Lettuce 1900-1909
2 Pineapple Carrot 1900-1909
3 Orange Potato 1900-1909
4 Banana Beans 1900-1909
Rank Fruits: Vegetable: Years:
1 Banana Carrot 1910-1919
2 Orange Potato 1910-1919
3 Apple Beans 1910-1919
4 Pineapple Lettuce 1910-1919
>>> with open('test.txt') as f:
for line in f:
try:
rank, fruit, vegetable, year = line.split()
for k in (fruit, vegetable): # for both the fruit and veg
t = (rank, year) # tuple of rank and year
d[k] = min(d.get(k, t), t) # set it to the min (rank, year)
except: # skip headers
pass


>>> d['Apple'] # fast lookup
('1', '1900-1909')
>>> d['Apple'][1]
'1900-1909'
>>> d['Carrot'][1]
'1910-1919'
>>> d['Banana'][1]
'1910-1919'

关于python - 查找排名最高的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15983425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com