Python实现把类当做字典来访问


Posted in Python onDecember 16, 2019

定义一个类将它实例化,我们可以通过obj.属性来访问类的属性,如果想获取类的所有实例变量,我们可以使用obj.__dict__来访问,如下:

class A:
  def __init__(self):
    self.a = 1
    self.b = 2
 
 
a = A()
print(a.__dict__)
# {'a': 1, 'b': 2}
#获取变量a:
print(a.__dict__['a'])
# 1

如果我们想直接通过字典的方式访问类,obj=A(),dict(obj)直接拿到类的所有实例变量,可以通过如下方式:

class A:
  def __init__(self):
    self.a = 1
    self.b = 2
 
  def keys(self):
    return ('a','b',)
 
  def __getitem__(self, item):
    return getattr(self, item)
 
a = A()
print(dict(a))
#输出:{'a': 1, 'b': 2}

可以看到,通过定义keys方法能够限制类的实例变量的输出,用内置的dict方法就能把类转换成一个普通的字典了

以上这篇Python实现把类当做字典来访问就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python编写网页爬虫脚本并实现APScheduler调度
Jul 28 Python
日常整理python执行系统命令的常见方法(全)
Oct 22 Python
Python与Java间Socket通信实例代码
Mar 06 Python
Python、PyCharm安装及使用方法(Mac版)详解
Apr 28 Python
Sanic框架应用部署方法详解
Jul 18 Python
python实现得到当前登录用户信息的方法
Jun 21 Python
Django shell调试models输出的SQL语句方法
Aug 29 Python
Tensorflow 自定义loss的情况下初始化部分变量方式
Jan 06 Python
python随机模块random的22种函数(小结)
May 15 Python
使用Keras预训练好的模型进行目标类别预测详解
Jun 27 Python
Python 实现 T00ls 自动签到脚本代码(邮件+钉钉通知)
Jul 06 Python
基于python实现坦克大战游戏
Oct 27 Python
python中p-value的实现方式
Dec 16 #Python
基于python读取.mat文件并取出信息
Dec 16 #Python
python基于plotly实现画饼状图代码实例
Dec 16 #Python
python 实现让字典的value 成为列表
Dec 16 #Python
python 列表、字典和集合的添加和删除操作
Dec 16 #Python
python实现字典嵌套列表取值
Dec 16 #Python
python绘制彩虹图
Dec 16 #Python
You might like
php 转换字符串编码 iconv与mb_convert_encoding的区别说明
2011/11/10 PHP
yii框架builder、update、delete使用方法
2014/04/30 PHP
php一维二维数组键排序方法实例总结
2014/11/13 PHP
javascript中的void运算符语法及使用介绍
2013/03/10 Javascript
js简易namespace管理器 实例代码
2013/06/21 Javascript
javascript简单实现表格行间隔显示颜色并高亮显示
2013/11/29 Javascript
Select标签下拉列表二级联动级联实例代码
2014/02/07 Javascript
jquery实现对联广告的方法
2015/02/05 Javascript
JavaScript数据结构和算法之图和图算法
2015/02/11 Javascript
Windows系统中安装nodejs图文教程
2015/02/28 NodeJs
轻松学习jQuery插件EasyUI EasyUI实现树形网络基本操作(2)
2015/11/30 Javascript
js自定义回调函数
2015/12/13 Javascript
JS控制页面跳转时未请求要跳转的地址怎么回事
2016/10/14 Javascript
vue-router跳转页面的方法
2017/02/09 Javascript
jQuery实现点击关注和取消功能
2017/07/03 jQuery
浅谈JavaScript作用域和闭包
2017/09/18 Javascript
VUE DOM加载后执行自定义事件的方法
2018/09/07 Javascript
javascript function(函数类型)使用与注意事项小结
2019/06/10 Javascript
微信小程序将页面按钮悬浮固定在底部的实现代码
2020/10/29 Javascript
[02:51]2014DOTA2国际邀请赛 IG战队官方纪录片
2014/07/21 DOTA
常用python编程模板汇总
2016/02/12 Python
python下如何查询CS反恐精英的服务器信息
2017/01/17 Python
python实现类之间的方法互相调用
2018/04/29 Python
python 用lambda函数替换for循环的方法
2018/06/09 Python
Python3.6简单反射操作示例
2018/06/14 Python
python+PyQT实现系统桌面时钟
2020/06/16 Python
python join方法使用详解
2019/07/30 Python
Pytorch Tensor的索引与切片例子
2019/08/18 Python
python中导入 train_test_split提示错误的解决
2020/06/19 Python
HTML5实现动画效果的方式汇总
2016/02/29 HTML / CSS
Trip.com香港网站:Ctrip携程旗下,全球最大的网上旅游社之一
2016/08/01 全球购物
小区门卫岗位职责
2013/12/31 职场文书
运动会开幕式解说词
2014/02/05 职场文书
物价局领导班子四风问题整改措施
2014/10/26 职场文书
项目投资意向书范本
2015/05/09 职场文书
SQLServer之常用函数总结详解
2021/08/30 SQL Server