python字典一些常见的魔法方法以及遇到的面试题有哪些

技术python字典一些常见的魔法方法以及遇到的面试题有哪些本篇文章给大家分享的是有关python字典一些常见的魔法方法以及遇到的面试题有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,

本文是分享一些关于python字典的常用魔术方法以及遇到了哪些面试问题。边肖觉得挺实用的,所以想分享给大家学习。希望大家看完这篇文章能有所收获。话不多说,让我们和边肖一起看看。

一、词典介绍。

Dict类型不仅广泛应用于各种程序中,也是Python语言的基石。字典可以在模块的命名空间、实例的属性和函数的关键字参数中看到。与之相关的内置函数都在_ _ builtins _ _中。__dict__模块。因为字典非常重要,Python对其实现进行了高度优化,哈希表是字典类型性能突出的根本原因。

与常规字典相比,OrderDict对象维护一个按照键插入顺序排序的双向链表,新插入的元素会放在链表的末尾,从而实现记住插入顺序的功能。但是在Python 3.7版本之后,内置字典已经达到了同样的能力,在Python 3.8版本中,提供了reversed()方法。因此,OrderDict不再必要。

第二,常用的映射方法:

1.检查k是否在字典D中.

d.__包含__(k)

2.让字典d以d[k]的形式返回键k对应的值。

d.__getitem__(k)

3.当__getitem__找不到相应的键时,将调用此方法。

d.__缺失__(k)

4.获取字典的属性值。

d.__getattribute__(*args,**kwargs)

5.如果字典中有关键字k,将其对应的值设置为default,然后返回该值;如果没有,让d[k]=default,然后返回default。

d.setdefault(k,[default])

第三,面试中遇到的问题。

1.字典以属性访问的方式访问元素。以dict[key]的方式获取值,如何访问字典元素的形式”。

class mydict(dict): def _ _ getattr _ _(self,item): try : return self[item]except : raise AttributeError(item)myd=mydict(a=1,b=2)print(myd.a)print(myd.c)

2.有一个字典,D1={“A”:(1,2,3)、“B”:(4,6,6)、“C”:(2,5,8)},值类型是元组,字典是根据值的第一个下标元素进行倒排的。d1排序后的结果是[('b ',(4,6,6)),(' c ',(2,5,8)),(' a ',(1,2,3))]。

d1={'a':(1,2,3),' b':(4,6,6),' c':(2,5,8)}res=sorted(d1.items(),key=lambdax:x[1][0],reverse=True)print(res)

3.有一个包含多个字典的列表,例如:

学生=[ { '姓名' : 'Stanley ','年龄' : 22,'分数' : 92},{ '姓名' : 'Peter ','年龄' : 19,'分数' : 99},{ '姓名' : 'Well ','年龄' : 23,'分数' : 82},{ '姓名' : 'Bob ','年龄' : 20,'分数' 23

把上面的数据排序,先按分数,再按年龄倒序。

from operatoriamportemgetterstudents _ by _ score _ age=sorted(学生,key=itemgetter('score ',' age '),reverse=True)

以上是python字典中常见的一些魔术方法和面试问题。边肖认为,一些知识点可能会在我们的日常工作中看到或使用。我希望你能通过这篇文章学到更多的知识。更多详情请关注行业资讯频道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/39954.html

(0)

相关推荐

  • oracle中出现ORA-01102错误怎么办

    技术oracle中出现ORA-01102错误怎么办这篇文章主要介绍了oracle中出现ORA-01102错误怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解

    攻略 2021年11月24日
  • python操作excel自动化办公(python自动化办公设置excel样式)

    技术Python办公自动化Excel怎么实现这篇文章主要介绍“Python办公自动化Excel怎么实现”,在日常操作中,相信很多人在Python办公自动化Excel怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好

    攻略 2021年12月23日
  • 怎么为机器学习工程设计Python接口

    技术怎么为机器学习工程设计Python接口本篇内容主要讲解“怎么为机器学习工程设计Python接口”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么为机器学习工程设计Pyth

    攻略 2021年11月26日
  • css和html的区别有哪些

    技术css和html的区别有哪些这篇文章主要介绍“css和html的区别有哪些”,在日常操作中,相信很多人在css和html的区别有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”css

    攻略 2021年11月9日
  • maven的各种打包插件有哪些功能(maven常用功能)

    技术maven常用的插件有哪些这篇文章主要介绍了maven常用的插件有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。背景maven 常用的三个插件对打

    攻略 2021年12月25日
  • linux下phpmyadmin的配置文件是什么意思

    技术linux下phpmyadmin的配置文件是什么意思这篇文章主要介绍linux下phpmyadmin的配置文件是什么意思,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!发现问题:linux下的p

    攻略 2021年11月24日