Python 字典
Python 字典
Python 字典用于以键值对格式存储数据。字典是 Python 中的数据类型,它可以模拟现实生活中的数据排列,其中某个特定的键存在某个特定的值。它是可变的数据结构。字典被定义为元素键和值。
键必须是单个元素
值可以是任何类型,如列表、元组、整数等。
换句话说,我们可以说字典是键值对的集合,其中的值可以是任何 Python 对象。相反,键是不可变的 Python 对象,即数字、字符串或元组。
创建字典
字典可以通过使用用花括号{}括起来的多个键值对来创建,每个键都用冒号(:)与其值分开。下面给出了定义字典的语法。
语法:
Dict = {"Name": "Tom", "Age": 22} |
在上面的字典 Dict 中,键名称和年龄是不可变对象的字符串。
让我们看一个创建字典并打印其内容的例子。
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE"} |
输出
<class 'dict'> |
Python 提供了内置函数 dict() 方法,也是用来创建字典的。空花括号{}用于创建空字典。
# Creating an empty Dictionary |
输出:
Empty Dictionary: |
访问字典值
我们已经讨论了如何使用索引在列表和元组中访问数据。
但是,可以通过使用键来访问字典中的值,因为键在字典中是唯一的。
字典值可以通过以下方式访问。
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE"} |
输出:
<class 'dict'> |
Python 为我们提供了一种使用 get()方法访问字典值的替代方法。它会给出与索引相同的结果。
添加字典值
字典是一种可变的数据类型,它的值可以通过使用特定的键来更新。该值可随键 Dict[key]=value一起更新。update()方法也用于更新现有值。
注意:如果键值已经存在于字典中,该值将被更新。否则,在字典中添加新的键。
让我们看一个更新字典值的例子。
示例- 1:
# Creating an empty Dictionary |
输出:
Empty Dictionary: |
示例- 2:
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE"} |
输出:
Empty Dictionary: |
使用 del 关键字删除元素
使用下面给出的 del 关键字可以删除字典中的项目。
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE"} |
输出:
<class 'dict'> |
上面代码中的最后一个 print 语句,它引发了一个错误,因为我们试图打印已经删除的 Employee 字典。
使用 pop()方法
pop() 方法接受键作为参数,并移除相关联的值。考虑下面的例子。
# Creating a Dictionary |
输出:
{1: 'JavaTpoint', 2: 'Peter'} |
Python 还提供了一个内置的方法 popitem()和 clear()方法,用于从字典中移除元素。popitem()从字典中移除任意元素,而 clear()方法移除整个字典中的所有元素。
迭代字典
字典可以使用 for
循环进行迭代,如下所示。
例 1
# for
循环打印字典的所有键
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE"} |
输出:
Name |
例 2
#for
循环打印字典的所有值
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE"} |
输出:
John |
示例- 3
#for
循环使用 values()方法打印字典的值。
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE"} |
输出:
John |
例 4
#for
循环使用 items()方法打印字典的项目。
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE"} |
输出:
('Name', 'John') |
字典键的属性
1.在字典中,我们不能为同一个键存储多个值。如果我们为一个键传递多个值,那么最后分配的值被认为是该键的值。
考虑下面的例子。
Employee={"Name":"John","Age":29,"Salary":25000,"Company":"GOOGLE","Name":"John"} |
输出:
Name John |
2.在 python 中,键不能是任何可变对象。我们可以使用数字、字符串或元组作为关键字,但是我们不能使用任何像列表这样的可变对象作为字典中的关键字。
考虑下面的例子。
Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"GOOGLE",[100,201,301]:"Department ID"} |
输出:
Traceback (most recent call last): |
内置字典功能
下面给出了内置的 python 字典方法以及描述。
功能 | 描述 |
---|---|
len(dict) | 它被用来计算字典的长度。 |
any(dict) | 与处理列表和元组的方式一样,如果一个字典键确实具有计算结果为 True 的布尔表达式,则 any() 方法确实会返回 True。 |
all(dict) | 与any()方法不同的是,all()只有在字典的每个键都包含一个True布尔值时才返回True。 |
sorted(dict) | 与列表和元组一样,sorted() 方法返回字典键的有序序列。升序排序对原始Python字典没有影响。 |
内置字典方法
下面给出了内置的 python 字典方法以及描述。
方法 | 描述 |
---|---|
dict.clear() | 它用于删除字典中的所有条目。 |
dict.copy() | 它返回字典的一个简单副本。 |
dict.from key(iterable,value= None,/) | 根据值等于值的可迭代表创建新字典。 |
dict.get(key,default=“none”) | 它用于获取为传递的键指定的值。 |
dict.has_key(key) | 如果字典包含指定的键,则返回 true。 |
dict.items() | 它以元组的形式返回所有键值对。 |
dict.key() | 它返回字典的所有键。 |
dict.setdefault(key,default =“None”) | 如果没有在字典中指定关键字,它用于将关键字设置为默认值 |
dict.update(dict2) | 它通过向字典中添加 dict2 的键值对来更新字典。 |
values() | 它返回字典的所有值。 |
len() | 长度 |
popitem() | 随机删除元素 |
pop() | 指定删除元素 |
count() | 计数 |
index() | 索引 |