gpt4 book ai didi

python - 检查列表中是否包含某个键

转载 作者:太空宇宙 更新时间:2023-11-03 16:51:19 25 4
gpt4 key购买 nike

我正在尝试检查列表是否包含 key 。

我有一本已排序的字典,并相信它会将其变成一个列表。现在我想检查该列表中的 key 。

这是我的代码,可以让您了解我在哪里:

drinkDict = {'drink1': drinkTimes[0],'drink2': drinkTimes[1],'drink3': drinkTimes[2],'drink4': drinkTimes[3],'drink5': drinkTimes[4]};
print drinkDict
for k, v in drinkDict.items():
if v == '0':
del drinkDict[k]
sorted_x = sorted(drinkDict.items(), key=operator.itemgetter(1))
print sorted_x
print (sorted_x[0]
if 'drink1' in sorted_x.key:
print "drink1 is present"
data = pin_update(VALID_BCM_PIN_NUMBERS[0], 0)

输出:

{'drink4': u'4.8', 'drink5': u'0.7', 'drink1': u'1.4', 'drink2': u'2.8', 'drink3': u'0'}
[('drink5', u'0.7'), ('drink1', u'1.4'), ('drink2', u'2.8'), ('drink4', u'4.8')]
('drink5', u'0.7')

我只是不知道如何检测sorted_x是否包含“drink1”或“drink2”等。

我不确定这里的术语,所以如果我错了,请纠正我,以便我可以更好地搜索解决方案。

最佳答案

您可以重用之前的 operator.itemgetter,只不过我们这次查看的是第一个(第 0 个)条目:

'drink1' in map(operator.itemgetter(0), sorted_x) # True

但是,您可能想要解释为什么要做这一切。看起来你正在围绕不同的数据结构跳舞,我不确定原因是什么。

要按第二个值对字典中的项目进行排序:

sortedItems = sorted(drinkDict.items(), key=operator.itemgetter(1))

一般来说,看起来您可以使用如下代码实现相同的目标:

import operator

drinkDict = {'drink1': '2',
'drink2': '1',
'drink3': '4',
'drink4': '3',
'drink5': '0'
}

# removes 'drink5': '0'
filteredDict = {k: v for k, v in drinkDict.items() if v != '0'}

# [('drink2', '1'), ('drink1', '2'), ('drink4', '3'), ('drink3', '4')]
sortedItems = sorted(filteredDict.items(), key=operator.itemgetter(1))

关于python - 检查列表中是否包含某个键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35821221/

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