Python Vlookup仅返回一个值-与Excel相似

时间:2018-07-25 11:20:46

标签: python flask jinja2

我正在尝试使用Flask在Python中复制Excel Vlookup。 我有一个Excel工作表,其格式如下:(项目为A列,价格为B列)。

Item:                     Price:
Keyboard                  £10
Mouse                     £5
Mousemat                  £5
Beer                      £4

现在在Excel中,如果我想知道鼠标的价格,并且在C1单元格中键入了该信息,我会这样做:

=VLOOKUP(C1,A2:B5,2,FALSE)

那会给我5英镑。这正是我要执行的操作,但是使用Python。 我已经在线阅读了一些教程,这些教程将我引向了Pandas和xlrd的方向,但这似乎是将两列合并在一起。这不是我想要的我希望它只显示结果,就像我在上面的excel示例中所做的一样 这是因为我想在Jinja模板中显示此结果。 仅供参考,用户将输入值“ Mouse”,并且列表很大。因此,我参与了一个Excel电子表格。

1 个答案:

答案 0 :(得分:0)

使用熊猫回答了我自己的问题。 对于那些将来可能会遇到类似问题的人,我的解决方案是:

import pandas
df = pd.read_excel('test.xlsx', sheet_name='Sheet1')
        price = df[df['Price'] == Mousemat]['Item'].sum()

因此,这就是您在Python中进行Vlookup的方式,而无需像我发现的所有其他示例一样使用merge。