Python程序 从字典中获取第一个和最后一个元素
Python是一种解释性的、面向对象的、高级的、具有动态语义的编程语言,由Gudio Van Rossum于1991年开发。它支持多种编程范式,包括结构化、面向对象和函数式编程。在深入探讨这个主题之前,让我们先复习一下与我们提供的问题相关的基本概念。
字典是一组唯一的、可变的、有序的项目。在字典写入中使用花括号,它们包含键和值:键名称可用于引用字典对象。数据值在字典中作为键:值对保留。
有序和无序的含义
当我们将字典称为有序时,我们意味着其内容具有不会改变的固定顺序。无序的项缺乏明确的顺序,因此无法使用索引查找特定项。
例子
请参见以下示例,以更好地理解上述讨论的概念。
请注意,字典键区分大小写;不同大小写的键将被处理不同。
Dict_2 = {1: 'Ordered', 2: 'And', 3: 'Unordered'}
print(Dict_2)
输出
{1: 'Ordered', 2: 'And', 3: 'Unordered'}
例子
请参见以下示例,以更好地理解概念
Primary_Dict = {1: 'Grapes', 2: 'are', 3: 'sour'}
print("\n以整数键为使用的字典如下:")
print(Primary_Dict)
# 创建一个字典
# 混合键
Primary_Dict = {'Fruit': 'Grape', 1: [10, 22, 13, 64]}
print("\n以混合键使用的字典如下:")
print(Primary_Dict)
输出
以整数键为使用的字典如下:
{1: 'Grapes', 2: 'are', 3: 'sour'}
以混合键使用的字典如下:
{'Fruit': 'Grape', 1: [10, 22, 13, 64]}
在使用Python时,有许多场合需要获取字典的主键。它可以用于许多不同的具体用途,如测试索引或其他许多此类用途。让我们来看看如何完成这项工作的一些方法。
使用list()类+keys()
可以使用上述技术的组合来完成这个特定的任务。在这里,我们只需从keys()收集的全部字典的键中创建一个列表,然后只访问第一个条目。在使用此方法之前,您需要考虑一个问题,即其复杂性。通过迭代字典中的每个项,它将先将整个字典转换为一个列表,然后再提取其第一个成员。该方法的复杂度为O(n)。
使用list()类获取字典中的最后一个键,例如last key = list(my dict)[-1]。列表类将字典转换为键列表,可以通过访问索引-1的元素来获取最后一个键。
例子
请参见以下示例,以更好地理解。
primary_dict = {
'Name': 'Akash',
'Rollnum': '3',
'Subj': 'Bio'
}
last_key = list(primary_dict)[-1]
print("last_key:" + str(last_key))
print(primary_dict[last_key])
first_key = list(primary_dict)[0]
print("first_key:" + str(first_key))
输出
last_key:Subj
Bio
first_key:Name
例子
以下程序创建了一个名为Primary_dict的字典,其中包含五个键值对。然后它将整个字典打印到屏幕上,然后分别打印出字典的第一个和最后一个键。
primary_dict = {'Grapes': 1, 'are': 2, 'sour': 3, 'and': 4, 'sweet': 5}
print("主要字典是:" + str(primary_dict))
res1 = list(primary_dict.keys())[0]
res2 = list(primary_dict.keys())[4]
print("字典的第一个键是:" + str(res1))
print("字典的最后一个键是:" + str(res2))
输出
主要字典是:{'Grapes': 1, 'are': 2, 'sour': 3, 'and': 4, 'sweet': 5}
字典的第一个键是:Grapes
字典的最后一个键是:sweet
示例
如果您只需要字典的第一个键,可以使用next()
和iter()
函数的组合来获取它。iter()
函数用于将字典条目转换为可迭代对象,而next()
获取第一个键。此方法的复杂度为O(1)。请参见以下示例以更好地理解。
primary_dict = {'Grapes': 1, 'are': 2, 'sour': 3, 'and': 4, 'sweet': 5}
print("主要字典是:" + str(primary_dict))
res1 = next(iter(primary_dict))
print("字典的第一个键如下:" + str(res1))
输出
主要字典是:{'Grapes': 1, 'are': 2, 'sour': 3, 'and': 4, 'sweet': 5}
字典的第一个键如下:Grapes