python自学教程图解,python自学教程推荐

  python自学教程图解,python自学教程推荐

  Yyds干货库存

  嗨,今天我们来谈谈字典。

  在开始之前,我们先来看一个问题。如果要用Python数据类型表示以下个人信息,应该用什么数据类型?

  你会发现数字、字符串、列表其实都不太方便表达。字典更适合这种情况。

  python中的字典类型可以方便地表达多维数据。字典使用集合元素的不重复作为键,以形成具有相应值的键-值对。然后,因为集合中的所有元素都是可哈希的,所以建立哈希表来索引和查询相应的值是非常方便的。

  Python Dictionary字典的定义由一对花括号定义,键值对用逗号分隔,键和值用冒号分隔。

  键必须是不可变的。一般可以用字符串,数字,元组,但是用的不多。

  该值可以是任何数据类型。

  A={} #空字典

  b={

  名称:九柄,

  年龄:18岁,

  爱好:[运动,梅子],

  朋友:[

  { 姓名:刘德华 },

  { 姓名:张学友 }

  ]

  }

  打印(类型(a))

  类别“字典”

  打印(类型(b))

  类 dict Python字典的常见操作字典的基本操作如下:添加、删除、更改、搜索。

  “检查”主要是获取列表的某个元素或多个元素,可以通过索引和切片的方式获取。“‘添加’主要是给这个字典添加一个新元素。”Delete”主要是指我们删除字典中的一个元素。Change”主要是修改本词典中的元素。Python字典的查询字典以key为索引,获取对应的值。

  b={

  名称:心蓝,

  年龄:18岁,

  爱好:[运动,梅子],

  朋友:[

  { 姓名:刘德华 },

  { 姓名:张学友 }

  ]

  }

  打印(b[名称])

  ‘心蓝’

  print(b[爱好][-1])

  “Meizi”是链接键和值的好方法,就像在字典中查找它们一样。

  Python字典有键吗?如果你想判断一个键是否已经存在,你可以直接用in来判断:

  print的键(b)Python字典中的‘name’可以是列表吗?关于Python字典的键,务必注意:

  你不能复制钥匙。密钥必须是可哈希的。更直接地说,键必须是不可变的。数据类型列表是可变的,因此不能用作字典键。同样,可变数据类型(如字典和集合)也不能用作字典的键。

  Python字典的键可以是元组吗?元组是不可变的,可以用作字典中的键。

  同样,字符串、整数、浮点数和布尔值是不可变的,因此它们都可以用作字典键。

  Python字典的值允许重复吗?既然字典的键不能重复,那么值可以重复吗?

  答案是肯定的。字典的价值几乎没有限制。您可以存储任何数据类型和任何数据值。

  不同的键对应相同的值是完全合理的:

  a={

  我的名字:九兵,

  你的名字:九兵

  }Python字典值的几种方法。最经典的估值方法就是通过括号来估值。

  D={ 姓名:九柄,年龄:18}

  d[名称]

  处理。但是这种方法有一个缺点。当获得的密钥不存在时,将报告一个错误。比如我拿一个爱好来说,它会触发一个keyerror错误,因为它不存在。

  回溯(最近一次呼叫):

  模块中文件 stdin 的第1行

  KeyError: keyerror 为了避免这种情况,我习惯使用get方法。当键不存在时,可以指定缺省值None,这不会导致错误。

  D={ 姓名:九柄,年龄:18}

  D.get(hobby ,None)Python字典添加元素字典添加元素和修改元素的语法是一样的。

  如果键不存在,则添加元素。

  D={name :九个把手 }

  d[年龄]=18

  打印(d)

  {name: nine handles , age: 18}如果键存在,则修改字典。

  D={name :九个把手 }

  d[名]=九兵

  打印(d)

  { name : JIU bing } Python dictionary delete element pop(key[,d])删除指定键对应的值,并返回值。如果键不存在,则返回默认值D,如果没有给出D,则抛出异常。

  d={ 姓名:九兵,年龄:18}

  流行音乐(“年龄”)

  18

  打印(d)

  { 姓名:酒冰 }

  流行音乐(“年龄”)

  回溯(最近一次呼叫):

  模块中文件 stdin 的第1行

  关键错误:“年龄”

  流行音乐(年龄,-1)

  -1 .popitem()任意删除字典中的一个键值对,并将其作为二进制元组(key,value)返回

  d={ 姓名:九兵,年龄:18}

  d.popitem()

  ( age ,18)Python字典合并也可以通过方法合并new_dict。更新(new_dict)

  D={name :九个把手 }

  New={ 年龄:18,性别:男性 }

  d .更新(新)

  打印(d)

  { 姓名:九柄,年龄:18,性别:男性 }有重复键时会被覆盖。

  D.update({ 性别:女性,身高:170})

  打印(d)

  { 姓名:蓝欣,年龄:18,性别:女性,身高:170}Python字典遍历字典使用for循环语法,但注意items()方法获取字典。可以通过items()同时得到键值对,元素是元组。

  New={ 年龄:18,性别:男性 }

  对于new.items()中的元素:

  #element是一个键值对。

  Print(element)如果你不小心掉落物品(),你只能得到key:

  对于新中的元素:

  #元素只有键

  Print(element)如果只想获取值,则添加values()。来验证一下。

  对于new.values()中的元素:

  #元素只有值

  Print(element)Python字典对Python的键和值进行排序,一般按照先加后显的顺序显示。如果要对字典进行排序,应该改变键值对的显示顺序。下面是一个优雅的实现,但它使用了一些还没有谈到的东西。

  您可以使用以下代码为关键参数值指定lambda表达式:

  y1={k: v for k,v in sorted(x.items(),

  key=lambda item: item[1])}

  打印(y1)

  #按价值降序排列

  y2={k: v for k,v in sorted(x.items(),

  key=lambda item: item[1],reverse=True)}

  Print(y2)这段代码使用for-in表达式生成一个字典,其中x是要排序的字典。Items获得了键值对。lambda表达式的项是当前的键值对。Item[0]表示键,item[1]表示值,所以用item[1]表示按值排序,用item[0]表示按键排序。

  汇总字典的操作非常丰富。除了以上,还有一些高级操作如setdefaultdict字典、默认字典、排序字典等,目前还没有涉及到。稍后会有一篇特别的文章来解释它们。

  词典也是面试中经常考察的知识点。如果准备好了相应的面试问题,就可以在招聘中占据主动。在需要面试问题的评论区回复“面试”。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: