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)

相关推荐

  • 学而时习之不亦说乎有朋自远方来,学而时习之不亦乐乎读音

    技术学而时习之不亦说乎有朋自远方来,学而时习之不亦乐乎读音“学而时习之学而时习之不亦说乎有朋自远方来,不亦说乎”的读音是什么?学而时习之,不亦说乎的读音:xué ér shí xí zhī,bú yì yuè hū。

    生活 2021年10月20日
  • MySQL中预处理语句prepare、execute、deallocate怎么用

    技术MySQL中预处理语句prepare、execute、deallocate怎么用这篇文章将为大家详细讲解有关MySQL中预处理语句prepare、execute、deallocate怎么用,小编觉得挺实用的,因此分享

    攻略 2021年10月29日
  • 如何修改CentOS 6.x上默认Python版本

    技术如何修改CentOS 6.x上默认Python版本这篇文章将为大家详细讲解有关如何修改CentOS 6.x上默认Python版本,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。最近遇

    攻略 2021年11月15日
  • 数据库中外连接有OR关联条件只能走NL优化的方法是什么

    技术数据库中外连接有OR关联条件只能走NL优化的方法是什么本篇内容介绍了“数据库中外连接有OR关联条件只能走NL优化的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一

    攻略 2021年11月4日
  • redis中的五种基本类型(redis的几种类型分别适用什么场景)

    技术redis层级结构是怎样的本篇内容主要讲解“redis层级结构是怎样的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“redis层级结构是怎样的”吧!redis中保存数据时

    攻略 2021年12月23日
  • css中怎么设置边框大小和颜色

    技术css中怎么设置边框大小和颜色小编给大家分享一下css中怎么设置边框大小和颜色,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

    攻略 2021年11月14日