Python字典教程

Python字典数据类型用于实现真实世界的字典逻辑。Python字典用于存储由键/值对组成的单个或多个项。字典是用花括号创建的,并通过对键值对进行配对来放置它们:。键值对用逗号分隔。

创建字典

只需使用花括号并将键值对放入其中,就可以创建Python字典。在下面的示例中,我们创建了一个包含3个项或键值对的字典。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

在创建或定义字典时,定义可以跨越多行而没有问题。但是键值对是原子的,单个键值对不跨越多行。

names = { "1":"ismail" ,           "2":"ali" ,           "3":"elif" }

在这本字典里 "1" 是关键 "ismail" 是值,它们与 : 创建项目。每一项都用 , 逗号。

或者 empty 可以在不提供任何项或键值对的情况下创建字典。我们可以使用dict()方法,它将创建一个没有任何项的字典并设置为变量。在下面的示例中,我们创建了一个名为 姓名 没有任何数据或项目的。

names = dict()

访问字典项

通过提供键,可以以不同的方式访问字典中的项。最常用的方法是使用方括号并将键放在其中。如果相关键存在,则返回其值。如果提供的密钥不存在,则不会返回任何内容。

a = names["1"]
print(a)
# Output is ismail

c = names["3"]
print(c)
# Output is elif

[]访问器还有另一种方法,即 get() 方法。这个 get() 方法是由字典提供的,它本身可以通过提供键来调用。

a = names.get("1")
print(a)
# Output is ismail

c = names.get("3")print(c)
# Output iselif

更改项目值

项值可以通过使用它们的键轻松更改。要更改项值,应使用 [] 方括号和新值的设置应类似于变量赋值。

names["1"] = "ahmet"

显示字典长度

词典可以包含一个或多个条目。可以使用 len() 方法简单。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }print(len(names))#Output is 3

检查密钥是否存在

这个 in 关键字用于检查指定字典中是否存在给定的键。在下面的示例中,我们将检查 "1" 存在于词典中。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }if "1" in names:   print("Exist")#Output Exist

检查值是否存在

即使没有像检查键存在这样的本地方法,我们也可以检查指定的字典是否有给定的值。首先,我们将把字典的所有值提取到列表中,然后使用 in 关键字。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

if "ismail" in names.values():
   print("Exist")#Output Exist

添加新项目

在词典中添加新条目很容易。这与更改字典中的值相同。我们将只提供方括号中的键,并指定要设置的值。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }names["4"] = "ahmet"

删除/删除项目

字典提供了名为 pop() 以返回并删除/删除用其键指定的项。我们将提供将被删除的项密钥。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

names.pop("1")

或者 popitem() 方法可用于删除最后添加或插入的项。正如我们所期望的,不需要指定任何键。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

names.popitem()

还有 del() 方法可用于从字典中删除指定项。应指定项键。如果未指定键,则字典及其所有项将被完全删除。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

del(names["1"])

显示所有键

这个 keys() 方法可用于返回或显示指定字典的所有键。钥匙将作为清单提供。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }keys = names.keys()

显示所有值

这个 values() 方法可用于返回或显示指定字典的所有值。值将作为列表提供。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

keys = names.values()

复制或克隆词典

可以使用 copy() 方法返回字典的完整副本。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }newnames = names.copy()

复制或克隆词典的另一种方法是使用 dict() 方法,其中我们将提供要作为参数复制的字典。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

newnames = dict(names)

嵌套字典

到目前为止,我们已经在使用没有嵌套项的单层字典。嵌套字典包含单个或多个项,其中项值也是字典。

users = { "İsmail Baydan":{"username":"ismail","password":"123"}          "Ahmet Baydan":{"username":"ahmet","password":"456"}}

循环或迭代项

Dictionary数据类型是iterable类型,这意味着可以使用诸如for keyword之类的机制对Dictionary的项进行迭代或循环。在迭代的每一步中,下一个项都会返回它的键,我们可以使用这个键来获取值。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }for key in names:   print("Key is "+key)   print("Name is "+names[key])

我们也可以在不使用键的情况下迭代这些值。我们将使用字典 values() 方法,该方法将以iterable方式返回指定字典的所有值。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

for name in names.values():
   print("Name is "+name)

我们还可以通过返回键和值来迭代字典项。词典 items() 方法可以用来以一种可迭代的方式返回键和值,在这种方式中我们可以循环for。

names = { "1":"ismail" , "2":"ali" , "3":"elif" }

for key , value in names.items()   print("Key is "+key)   print("Name is "+value)

合并或联接词典

多个词典可以以不同的方式合并在一起。第一种方法是使用 update() 方法,其中第一个字典内容将提供给第二个one update()方法,并且第二个字典中的所有项都将更新,如果第一个字典项不存在,则将添加它们。

names1 = { "1":"ismail" , "2":"ali" , "3":"elif" }names2 = { "4":"ecrin" , "5":"ahmet" }names2.update(names1)

或者,我们可以让事情变得更清楚,并创建一个空字典,其中第一个和第二个字典合并到第三个空字典中。

names1 = { "1":"ismail" , "2":"ali" , "3":"elif" }

names2 = { "4":"ecrin" , "5":"ahmet" }

names = dict()names.update(names1)names.update(names2)

字典方法

作为一种流行的数据类型,Python字典提供了有用的操作方法。字典提供了以下方法。

方法 说明
清除() 从字典中删除所有项或键值对
复制() 返回字典的副本
fromkeys() 返回具有指定键和值的字典。这可以称为子字典
得到( 钥匙 ) 返回指定键的值
项目() 返回包含每个键值对的元组的列表
密钥() 返回字典所有键的列表
流行音乐( 钥匙 ) 删除具有指定键的项
popitem() 删除最后插入的项或键值对
设置默认值() 返回指定键的值。如果键不存在:添加具有提供的键值的项
更新() 使用指定的键值对更新字典
值() 返回字典中所有值的列表
© 版权声明
THE END
喜欢就支持一下吧,技术咨询可以联系QQ407933975
点赞0 分享