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设置检查点简单实现代码
Jul 01 Python
通过Python使用saltstack生成服务器资产清单
Mar 01 Python
django 解决manage.py migrate无效的问题
May 27 Python
python2 与 pyhton3的输入语句写法小结
Sep 10 Python
python2与python3中关于对NaN类型数据的判断和转换方法
Oct 30 Python
pandas ix &iloc &loc的区别
Jan 10 Python
pycharm设置鼠标悬停查看方法设置
Jul 29 Python
django中使用事务及接入支付宝支付功能
Sep 15 Python
python logging添加filter教程
Dec 24 Python
Pytorch Tensor 输出为txt和mat格式方式
Jan 03 Python
Python 面向对象部分知识点小结
Mar 09 Python
Python爬虫防封ip的一些技巧
Aug 06 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安装问题
2006/10/09 PHP
PHP邮件专题
2006/10/09 PHP
mysql From_unixtime及UNIX_TIMESTAMP及DATE_FORMAT日期函数
2010/03/21 PHP
五款PHP代码重构工具推荐
2014/10/14 PHP
PHP SPL标准库之SplFixedArray使用实例
2015/05/12 PHP
php实现的pdo公共类定义与用法示例
2017/07/19 PHP
tp5框架前台无限极导航菜单类实现方法分析
2020/03/29 PHP
使用Modello编写JavaScript类
2006/12/22 Javascript
用js实现的自定义的对话框的实现代码
2010/03/21 Javascript
javascript实现的弹出层背景置灰-模拟(easyui dialog)
2013/12/27 Javascript
jquery实现类似淘宝星星评分功能有截图
2014/09/15 Javascript
jQuery之简单的表单验证实例
2016/07/07 Javascript
javascript验证内容为数字以及长度为10的简单实例
2016/08/20 Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
2016/12/30 Javascript
简单实现IONIC购物车功能
2017/01/10 Javascript
vue在使用ECharts时的异步更新和数据加载详解
2017/11/22 Javascript
Vue.js分页组件实现:diVuePagination的使用详解
2018/01/10 Javascript
Vue封装Swiper实现图片轮播效果
2018/02/06 Javascript
Vue 中使用vue2-highcharts实现曲线数据展示的方法
2018/03/05 Javascript
SpringBoot+Vue开发之Login校验规则、实现登录和重置事件
2020/10/19 Javascript
python获取beautifulphoto随机某图片代码实例
2013/12/18 Python
TensorFlow卷积神经网络之使用训练好的模型识别猫狗图片
2019/03/14 Python
Python3中的bytes和str类型详解
2019/05/02 Python
Python 使用 attrs 和 cattrs 实现面向对象编程的实践
2019/06/12 Python
python3 写一个WAV音频文件播放器的代码
2019/09/27 Python
python常见字符串处理函数与用法汇总
2019/10/30 Python
深入浅析css3 border-image边框图像详解
2015/11/24 HTML / CSS
前厅部经理岗位职责范文
2014/02/04 职场文书
给校长的一封建议书
2014/03/12 职场文书
股东出资证明书范例
2014/10/04 职场文书
项目转让协议书
2014/10/27 职场文书
2014年幼儿园园务工作总结
2014/12/05 职场文书
成品仓库管理员岗位职责
2015/04/09 职场文书
2016年小学生新年寄语
2015/08/18 职场文书
军训决心书范文
2015/09/22 职场文书
Python绘画好看的星空图
2022/03/17 Python