Python|获取字典中的前 K 个项目
在使用字典时,我们可能会遇到一个问题,我们可能只需要获取字典中的一些初始键。此问题通常发生在 Web 开发领域的情况下。让我们讨论一些可以解决这个问题的方法。
方法 #1:使用items()
+ 列表切片
要解决这个问题,就必须隐含上述功能的组合。 items
函数可用于获取所有字典项,主要任务是通过列表切片完成,这限制了字典键值对。
# Python3 code to demonstrate working of
# Get first K items in dictionary
# Using items() + list slicing
# Initialize dictionary
test_dict = {'gfg' : 1, 'is' : 2, 'best' : 3, 'for' : 4, 'CS' : 5}
# printing original dictionary
print("The original dictionary : " + str(test_dict))
# Initialize limit
K = 3
# Using items() + list slicing
# Get first K items in dictionary
res = dict(list(test_dict.items())[0: K])
# printing result
print("Dictionary limited by K is : " + str(res))
输出 :
The original dictionary : {‘is’: 2, ‘CS’: 5, ‘best’: 3, ‘gfg’: 1, ‘for’: 4}
Dictionary limited by K is : {‘is’: 2, ‘CS’: 5, ‘best’: 3}
方法#2:使用islice() + items()
上述功能的组合可用于执行此特定任务。在这些中,我们使用islice()
执行切片,并且items
函数允许将项目从可迭代中取出。
# Python3 code to demonstrate working of
# Get first K items in dictionary
# Using islice() + items()
import itertools
# Initialize dictionary
test_dict = {'gfg' : 1, 'is' : 2, 'best' : 3, 'for' : 4, 'CS' : 5}
# printing original dictionary
print("The original dictionary : " + str(test_dict))
# Initialize limit
K = 3
# Using islice() + items()
# Get first K items in dictionary
res = dict(itertools.islice(test_dict.items(), K))
# printing result
print("Dictionary limited by K is : " + str(res))
输出 :
The original dictionary : {‘is’: 2, ‘CS’: 5, ‘best’: 3, ‘gfg’: 1, ‘for’: 4}
Dictionary limited by K is : {‘is’: 2, ‘CS’: 5, ‘best’: 3}