python使用点操作符访问字典(dict)数据的方法


Posted in Python onMarch 16, 2015

本文实例讲述了python使用点操作符访问字典(dict)数据的方法。分享给大家供大家参考。具体分析如下:

平时访问字典使用类似于:dict['name']的方式,如果能通过dict.name的方式访问会更方便,下面的代码自定义了一个类提供了这种方法。

class DottableDict(dict):
  def __init__(self, *args, **kwargs):
    dict.__init__(self, *args, **kwargs)
    self.__dict__ = self
  def allowDotting(self, state=True):
    if state:
      self.__dict__ = self
    else:
      self.__dict__ = dict()
d = DottableDict()
d.allowDotting()
d.foo = 'bar'
print(d['foo'])
# bar
print(d.foo)
# bar
d.allowDotting(state=False)
print(d['foo'])
# bar from https://3water.com
print(d.foo)
# AttributeError: 'DottableDict' object has no attribute 'foo'

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python原始字符串与Unicode字符串操作符用法实例分析
Jul 22 Python
python实现批量修改文件名代码
Sep 10 Python
Python爬取当当、京东、亚马逊图书信息代码实例
Dec 09 Python
Python实现的凯撒密码算法示例
Apr 12 Python
在numpy矩阵中令小于0的元素改为0的实例
Jan 26 Python
Python OpenCV之图片缩放的实现(cv2.resize)
Jun 28 Python
Python threading的使用方法解析
Aug 28 Python
python时间与Unix时间戳相互转换方法详解
Feb 13 Python
python程序输出无内容的解决方式
Apr 09 Python
pycharm第三方库安装失败的问题及解决经验分享
May 09 Python
Python基于smtplib协议实现发送邮件
Jun 03 Python
python代码实现猜拳小游戏
Nov 30 Python
python用来获得图片exif信息的库实例分析
Mar 16 #Python
python通过pil模块获得图片exif信息的方法
Mar 16 #Python
使用Python抓取模板之家的CSS模板
Mar 16 #Python
Python实现竖排打印传单手机号码易撕条
Mar 16 #Python
python通过exifread模块获得图片exif信息的方法
Mar 16 #Python
python通过pil模块将raw图片转换成png图片的方法
Mar 16 #Python
python通过pil将图片转换成黑白效果的方法
Mar 16 #Python
You might like
PHP环境中Memcache的安装和使用
2015/11/05 PHP
详解PHP的Yii框架中自带的前端资源包的使用
2016/03/31 PHP
利用php抓取蜘蛛爬虫痕迹的示例代码
2016/09/30 PHP
[IE&FireFox兼容]JS对select操作
2007/01/07 Javascript
jquery判断单个复选框是否被选中的代码
2009/09/03 Javascript
Javascript拓展String方法小结
2013/07/08 Javascript
Event altKey,ctrlKey,shiftKey属性解析
2013/12/18 Javascript
href下载文件根据id取url并下载
2014/05/28 Javascript
图解prototype、proto和constructor的三角关系
2016/07/31 Javascript
实例详解display:none与visible:hidden的区别
2017/03/30 Javascript
Windows下Node.js安装及环境配置方法
2017/09/18 Javascript
jQuery实现基本隐藏与显示效果的方法详解
2018/09/05 jQuery
Vue用v-for给循环标签自身属性添加属性值的方法
2018/10/18 Javascript
layer插件实现在弹出层中弹出一警告提示并关闭弹出层的方法
2019/09/24 Javascript
这15个Vue指令,让你的项目开发爽到爆
2019/10/11 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
element-ui 实现响应式导航栏的示例代码
2020/05/08 Javascript
vue实现下拉菜单树
2020/10/22 Javascript
vuejs实现下拉框菜单选择
2020/10/23 Javascript
[47:43]完美世界DOTA2联赛PWL S3 Magama vs GXR 第二场 12.19
2020/12/24 DOTA
详解python 3.6 安装json 模块(simplejson)
2019/04/02 Python
pandas 数据索引与选取的实现方法
2019/06/21 Python
pytorch实现对输入超过三通道的数据进行训练
2020/01/15 Python
Python sys模块常用方法解析
2020/02/20 Python
django xadmin中form_layout添加字段显示方式
2020/03/30 Python
python3.6使用SMTP协议发送邮件
2020/05/20 Python
Python如何执行系统命令
2020/09/23 Python
Django数据库迁移常见使用方法
2020/11/12 Python
Under Armour安德玛英国官网:美国高端运动科技品牌
2018/09/17 全球购物
技校个人求职信范文
2014/01/25 职场文书
花店创业计划书范文
2014/02/07 职场文书
校园文化标语
2014/06/18 职场文书
优秀大学生事迹材料
2014/12/24 职场文书
温馨祝福晨语:美丽的一天从我的问候开始
2019/11/28 职场文书
MySQL中IO问题的深入分析与优化
2022/04/02 MySQL