Python自定义一个类实现字典dict功能的方法


Posted in Python onJanuary 19, 2019

如下所示:

import collections


class Mydict(collections.UserDict):


  def __missing__(self, key):
    if isinstance(key, str):
      raise KeyError(key)
    return self[str(key)]

  def __contains__(self, key):
    return str(key) in self.data

  def __setitem__(self, key, item):
    self.data[str(key)] = item

  def __getattr__(self, key):
    return self.data[str(key)]


if __name__ == '__main__':
  mydict = Mydict((('a',1),('c',('d',3)),('b',2)))

  print(mydict)
  print(mydict.a)
  print(mydict['a'])

以上这篇Python自定义一个类实现字典dict功能的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python去除所有html标签的方法
May 05 Python
Python编程中归并排序算法的实现步骤详解
May 04 Python
浅谈python 里面的单下划线与双下划线的区别
Dec 01 Python
Pandas 同元素多列去重的实例
Jul 03 Python
Python重新加载模块的实现方法
Oct 16 Python
python wav模块获取采样率 采样点声道量化位数(实例代码)
Jan 22 Python
浅谈Django QuerySet对象(模型.objects)的常用方法
Mar 28 Python
浅谈多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
Jun 30 Python
python 中的命名空间,你真的了解吗?
Aug 19 Python
Python爬取豆瓣数据实现过程解析
Oct 27 Python
基于Django快速集成Echarts代码示例
Dec 01 Python
matplotlib部件之矩形选区(RectangleSelector)的实现
Feb 01 Python
解决pycharm工程启动卡住没反应的问题
Jan 19 #Python
解决安装pycharm后不能执行python脚本的问题
Jan 19 #Python
关于Pycharm无法debug问题的总结
Jan 19 #Python
使用pycharm设置控制台不换行的操作方法
Jan 19 #Python
解决使用PyCharm时无法启动控制台的问题
Jan 19 #Python
Python设计模式之代理模式实例详解
Jan 19 #Python
用Python PIL实现几个简单的图片特效
Jan 18 #Python
You might like
用PHP+java实现自动新闻滚动窗口
2006/10/09 PHP
php self,$this,const,static,->的使用
2009/10/22 PHP
php利用iframe实现无刷新文件上传功能的代码
2011/09/29 PHP
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
2014/11/03 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
Javascript 解疑
2009/11/11 Javascript
基于jQuery的图片剪切插件
2011/08/03 Javascript
js操作输入框提示信息且响应鼠标事件
2014/03/25 Javascript
jQuery中position()方法用法实例
2015/01/16 Javascript
实例讲解jQuery中对事件的命名空间的运用
2016/05/24 Javascript
bootstrap多种样式进度条展示
2016/12/20 Javascript
javascript 玩转Date对象(实例讲解)
2017/07/11 Javascript
vue.js todolist实现代码
2017/10/29 Javascript
使用Vue开发动态刷新Echarts组件的教程详解
2018/03/22 Javascript
Angular2实现的秒表及改良版示例
2019/05/10 Javascript
[02:56]DOTA2英雄基础教程 巨魔战将
2013/12/10 DOTA
Python实现自动为照片添加日期并分类的方法
2017/09/30 Python
Python 快速实现CLI 应用程序的脚手架
2017/12/05 Python
python爬取酷狗音乐排行榜
2019/02/20 Python
Python3爬虫之自动查询天气并实现语音播报
2019/02/21 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
2020/02/17 Python
零基础学python应该从哪里入手
2020/08/11 Python
OpenCV灰度化之后图片为绿色的解决
2020/12/01 Python
python 实现的车牌识别项目
2021/01/25 Python
2019年分享net面试的经历和题目
2016/08/07 面试题
Java里面Pass by value和Pass by Reference是什么意思
2016/05/02 面试题
幼师自我鉴定范文
2013/10/01 职场文书
小班开学寄语
2014/04/04 职场文书
公证委托书大全
2014/04/04 职场文书
法定代表人授权委托书格式
2014/10/14 职场文书
教育合作协议范本
2014/10/17 职场文书
初三毕业评语
2014/12/26 职场文书
护士年终考核评语
2014/12/31 职场文书
项目技术负责人岗位职责
2015/04/13 职场文书
关于Numpy之repeat、tile的用法总结
2021/06/02 Python
Redis入门教程详解
2021/08/30 Redis