当前位置: 首页 > 网络应用技术

从头开始学习Python的词典

时间:2023-03-08 20:20:29 网络应用技术

  Python中的字典提供了一种灵活的访问和组织数据的方式

  钥匙通常是独一无二的。如果重复键,则最后一个键值对将替换上一个键值对。该值没有独特的要求,如下所示:

  值可以采用任何数据类型,但是键必须是不可变的,例如字符串,数字或元组,如下:

  创建一个字典并访问数据字典的内容。以下字典的键是“大小”,“颜色”,“字符”,这些键的值是“大”,“白色”,“柔和”以访问词典的添加键,可以直接访问括号中的添加键。例如:

  同样,字典也可以用作整数作为键,类似于列表的索引,但是字典的值是任何整数类型都可以。不必从0开始,因为键值的数据类型是任意的,如下所示:

  由于字典没有排序,因此不能像列表一样切成薄片。如果键不存在字典中,keyError将提供错误信息。此键与“交叉 - 存储”的列表非常相似交互式环境中的代码并注意显示的错误信息,因为没有“颜色”密钥:

  在字典中添加新内容的方法是增加新的键/值对,修改或删除现有的键/值。

  字典元素的删除操作可以单独删除或清除整个词典。

  上面的打印语句将导致例外,因为使用DEL后的字典不再存在:

  字典值可以在任何python对象上不受限制,这既可以是标准或用户定义,又不好。

  需要记住两个要点:

  1)不允许两次键。

  实例

  2)键必须保持不变,因此您可以使用数字,字符串或元组作为组,因此您不能使用列表,如下:

  Len()方法计算字典元素数量(键总数)

  str()方法输出字典字符串徽标可以打印

  Type()方法返回输入变量类型。如果变量是字典,则返回字典类型

  删除字典中的所有元素,clear()方法没有任何返回值。

  copy()方法复制字典

  在此实例中,dict2实际上是dict1的参考,即别名,因此输出结果相同。dict3已深刻复制了父对象。深副本将不会通过dict1进行修改。修改,即,将通过修改父亲的对象进行修改。副本将不会通过对父亲对象的修改进行修改。以下结果如下输出:

  创建一个新的词典,使用序列seq中的元素制作字典键,val是对应于字典的所有键的初始值,此方法返回一个新词典

  来自keys()方法语法

  例子:

  执行结果返回新词典。如果未指定值未指定,则以上结果的结果是:

  返回到指定密钥的值,如果该值不在字典中,则返回默认值

  get()方法语法

  例子:

  以上结果是输出:

  如果键在字典中返回true,则否则会返回false

  以上结果是输出:

  item()方法返回列表中的遍历(键,值)元数组

  测量数组的遍历行情的示例:

  以上结果是输出:

  返回可以使用list()将其转换为列表的迭代器

  键()方法语法:

  例子:

  以上结果是输出:

  从结果中,结果返回迭代对象。目前,我们可以使用列表将其转换为列表:

  Python字典setDefault()方法类似于get()方法。如果键返回字典中的相应值。如果您不在字典中,请插入键的默认值并设置默认值,然后返回默认值。默认值的默认值无。

  setDefault()方法语法:

  例子:

  以上结果是输出:

  python字典update()函数将字典参数dict2键/值(键/值)更新为字典dict。

  语法:

  例子:

  以上结果是输出:

  值()方法的python字典值返回可以使用list()转换为列表的迭代器,并且列表是字典中的所有值。

  以上结果是输出:

  Python字典POP()方法删除字典的值以给出键键,而返回值是删除值。必须给出键。否则,返回默认值。

  pop()方法语法:

  例子:

  以上结果是输出:

  Python字典popitem()方法随机返回键对(键,值)表单和LIFO的顺序(最后一个在第一个向后的第一个-out方法中),即最后的键值对。如果字典为空,但称为此方法,报告了keyError异常。

  例子:

  以上结果是输出:

  清除字典:

  结果输出是:

  列表中的元素表是存储,因为元素从0到序列开始,因此对列表中的表项进行了排序,并且词典内容的内容未分类。

  可以从上面的示例中可以看出,当列表元素的内容一致,顺序是不同的,内容不成功,并且同一词典值的值成功,表明字典中的元素内容不是存储按顺序存储。

  本节介绍了Python数据结构字典的操作和使用,并为Python工程师的一些基本知识提供了支持。

  示例代码:Python-100天

  原始:https://juejin.cn/post/7103440638246715405