__setitem__,__getitem,__delitem__的作用
2024-09-01 07:26:43
class Foo:
def __init__(self, name):
self.name = name
def __getitem__(self, item):
print('obj[key]时,我执行')
print(self.__dict__[item]) def __setitem__(self, key, value):
print('obj[key]=value时,我执行')
self.__dict__[key] = value def __delitem__(self, key):
print('del obj[key]时,我执行')
self.__dict__.pop(key) def __delattr__(self, item):
print('del obj.key时,我执行')
self.__dict__.pop(item) f1 = Foo('jack') f1['name'] # obj[key]时,我执行 # jack f1['age'] = 18 # obj[key]=value时,我执行
f1['age2'] = 19 # # obj[key]=value时,我执行 del f1.age # del obj.key时,我执行
del f1['age2'] # del obj[key]时,我执行 f1['name'] = 'alex' # f1[key]=value时,我执行
print(f1.__dict__) # {'name': 'alex'}
最新文章
- Angular2 组件生命周期
- 微信中修改title
- PagerIndicator主题样式修改
- corner2
- 数据关联分析 association analysis (Aprior算法,python代码)
- android界面优化笔记(TODO)
- 存储过程系列之存储过程sql查询存储过程的使用
- 标准程序员系列-Github篇-初始化一个代码仓库
- iOS App 自定义 URL Scheme 设计(转自COCOACHINA)
- jQuery 之 $.get、$.post、$.getJSON、$.ajax
- 杭电acm阶段之理工大版
- nodejs 复制、移动文件
- 100套新鲜免费的PS笔刷下载
- 简单的国际化i18n
- matplotlib使用时报错RuntimeError: Python is not installed as a framework(一)
- WebSocket刨根问底(三)之群聊
- Python第六天 类型转换
- 【ASP.NET】UCenter实现多站点同步登录退出
- 使用GCD控制网络请求
- avalon2学习教程05属性操作
热门文章
- pat1097. Deduplication on a Linked List (25)
- SpringBoot | 第二章:lombok介绍及简单使用
- 初学struts2-入门案列
- Lambda动态排序分页通用方法
- nodejs 实践:express 最佳实践系列
- jquery进阶(1)
- 学习笔记:location.hash和history.pushState()
- JavaScript获取URL参数公共方法
- Spring MVC中注解的简介
- 为OSSIM添加 ossec的linux agent