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实现的下载8000首儿歌的代码分享
Nov 21 Python
Python文件操作,open读写文件,追加文本内容实例
Dec 14 Python
django rest framework之请求与响应(详解)
Nov 06 Python
利用python GDAL库读写geotiff格式的遥感影像方法
Nov 29 Python
python实现ip代理池功能示例
Jul 05 Python
python把ipynb文件转换成pdf文件过程详解
Jul 09 Python
Python-opencv 双线性插值实例
Jan 17 Python
python使用Geany编辑器配置方法
Feb 21 Python
Python实现动态循环输出文字功能
May 07 Python
浅析python 动态库m.so.1.0错误问题
May 09 Python
浅谈keras使用中val_acc和acc值不同步的思考
Jun 18 Python
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
Mar 04 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实现字符串翻转的方法
2015/03/27 PHP
PHP微信开发之模板消息回复
2016/06/24 PHP
Laravel配置全局公共函数的方法步骤
2019/05/09 PHP
浅谈PHP array_search 和 in_array 函数效率问题
2019/10/15 PHP
ECMAScript 创建自己的js类库
2012/11/22 Javascript
jQuery.event兼容各浏览器的event详细解析
2013/12/18 Javascript
jQuery 和 CSS 的文本特效插件集锦
2014/12/12 Javascript
Js与Jq 获取页面元素值的方法和差异对比
2015/04/30 Javascript
Boostrap基础教程之JavaScript插件篇
2016/09/08 Javascript
Windows系统下安装Node.js的步骤图文详解
2016/11/15 Javascript
js闭包用法实例详解
2016/12/13 Javascript
AngularJS框架中的双向数据绑定机制详解【减少需要重复的开发代码量】
2017/01/19 Javascript
JavaScript全屏和退出全屏事件总结(附代码)
2017/08/17 Javascript
jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法
2018/03/28 jQuery
jQuery实现数字自动增加或者减少的动画效果示例
2018/12/11 jQuery
Vue Cli 3项目使用融云IM实现聊天功能的方法
2019/04/19 Javascript
利用H5api实现时钟的绘制(javascript)
2020/09/13 Javascript
Python实现的几个常用排序算法实例
2014/06/16 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
2017/10/25 Python
python利用有道翻译实现"语言翻译器"的功能实例
2017/11/14 Python
PyQt5每天必学之弹出消息框
2018/04/19 Python
Random 在 Python 中的使用方法
2018/08/09 Python
在python中使用xlrd获取合并单元格的方法
2018/12/26 Python
Python3爬虫全国地址信息
2019/01/05 Python
PyQt5-QDateEdit的简单使用操作
2020/07/12 Python
使用CSS媒体查询(Media Queries)和JavaScript判断浏览器设备类型的方法
2014/04/03 HTML / CSS
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
竞聘演讲稿范文
2014/01/12 职场文书
2014年庆元旦活动方案
2014/02/15 职场文书
工程质量月活动方案
2014/02/19 职场文书
2014年学生会生活部工作总结
2014/11/07 职场文书
2015大学自主招生自荐信范文
2015/03/04 职场文书
入党申请书格式
2019/06/20 职场文书
导游词之绍兴柯岩古镇
2020/01/09 职场文书
Vue+Flask实现图片传输功能
2022/04/01 Vue.js
浅谈Redis的事件驱动模型
2022/05/30 Redis