常见内置函数

  • 内置函数:在类的内部,特定时机自动触发的函数

  • 示例1:setattr、getattr、delattr

class Person:
# def __init__(self, name):
# self.name = namedef __setattr__(self, key, value):
# 当设置对象成员属性的时,系统会自动调用
print(key, value)
self.__dict__[key] = valuedef __getattr__(self, item):
# 当访问不存在的对象属性时,系统会自动调用
if item == 'age':
return 123
else:
return 'default'def __delattr__(self, item):
# 当销毁对象的成员属性时,系统会自动调用
print('del', item)xiaoming = Person()# 每个对象都有一个成员属性:__dict__
# 用于存放对象的属性,包括动态添加的
# print(xiaoming.__dict__)# xiaoming.name = '小明'
# print(xiaoming.name)# print(xiaoming.__dict__)# xiaoming.age = 18print(xiaoming.age)
print(xiaoming.hello)del xiaoming.age

示例2:setitem、getitem、delitem

  • 当对对象按照字典方式操作时,会自动触发相关方法

  • 示例:

    class Person:# 当对对象按照字典设置键值对时,会自动触发该方法def __setitem__(self, key, value):# print(key, value)self.__dict__[key] = value
    ​# 当对对象按照字典操作根据键获取值时,会自动触发该方法def __getitem__(self, item):# print(item)return self.__dict__[item]
    ​# 当做字典操作,删除键值对时,自动触发该方法def __delitem__(self, key):# print(key)del self.__dict__[key]p = Person()
    p['name'] = 'xiaoming'
    print(p['name'])
    ​
    # 通过字典方式添加的键值对,可以通过属性的方式获取
    print(p.name)
    print(p.dict)
    del p['name']

转载于:https://www.cnblogs.com/kiki5881/p/8572636.html

python 常见内置函数setattr、getattr、delattr、setitem、getitem、delitem相关推荐

  1. Python 3 内置函数 - `setattr()`函数

    Python 3 内置函数 - setattr()函数 0. setattr()函数 用于设置属性值,该属性不一定是存在的. setattr(x, 'y', v) 等于 x.y = v 1. 使用方法 ...

  2. python——常见内置函数、可迭代对象与迭代器对象

    目录 一.常见内置函数 1.abs() 2.all()与any() 3.bin() oct() hex() 4.int() 5.bytes() 6.callable() 7.chr() ord() 8 ...

  3. 逆袭之路——python常见内置函数、表达式【day15】

    今日内容概要 三元表达式(简化代码) 各种生成式(简化代码) 匿名函数(简化代码) 常见重要内置函数 常见内置函数补充 今日内容详细 一.三元表达式 三元表达式:         值1 if 条件 e ...

  4. python常见内置函数_python常见的内置函数

    函数分为自定义函数和内置函数 python内置函数分类: 一.强制转换int() / str() / bool() / list() / tuple() / dict() / set() 二.输入输出 ...

  5. python常见内置函数

    abs # 求绝对值 all #Return True if bool(x) is True for all values x in the iterable.If the iterable is e ...

  6. python内置函数表示2的10次幂_Python常见内置函数用法(二)

    本文作者:孙雪丽 文字编辑:杨慧琳 技术总编:张学人重大通知!!!2019年6月22日至24日在河南郑州举行Stata编程技术特别训练营,招生工作已经圆满结束.另外爬虫俱乐部将于2019年7月5日至7 ...

  7. hog函数的用法 python_Python常见内置函数用法(三)

    本文作者:孙雪丽 文字编辑:周聪聪 技术总编:张学人 重大通知!!!2019年6月22日至24日在河南郑州举行Stata编程技术特别训练营,招生工作已经圆满结束.另外爬虫俱乐部将于2019年7月5日至 ...

  8. Python的内置函数(四十八)、setattr()函数

    参考 Python的内置函数(四十八).setattr()函数 - 云+社区 - 腾讯云 描述 setattr() 函数对应函数 getattr(),用于设置属性值,该属性不一定是存在的. 语法 se ...

  9. python 内置函数 setattr()

    内置函数 setattr() 1.描述:setattr() 函数对应函数 getattr(),用于设置属性值,该属性不一定是存在的. 2.语法:setattr(object, name, value) ...

最新文章

  1. UML图系列——建模和面向对象
  2. 云信小课堂|聊天室内容审核很头疼?3步解决!
  3. OS / Linux / 伙伴(buddy)算法
  4. boost::mpl模块实现reverse相关的测试程序
  5. windowsXP用VNC客户端连接centos6桌面后再用tsclient连接windows2003/2008桌面
  6. 前端学习(489):文本格式化
  7. 手机充电IC设置电流与实测电流不一致问题剖析
  8. Pytest参数选项在脚本中和命令行用法详解
  9. DSP5509项目之用FFT识别钢琴音调(5)之开始傅里叶变换
  10. Maven项目出现web.xml is missing and 《failOnMissingWebXml》is set to true,已解决
  11. Linux 命令(11)—— col 命令
  12. [matlab]使用struct创建结构体
  13. 3行python代码实现假聊天机器人(慎入:这是假机器人!!!)
  14. Integrity Pro for mac(网站死链接清理)
  15. Android之仿ele地图定位效果
  16. securecrt安装mysql_centos安装mysql(for 小白)
  17. 阿里巴巴大数据实践:大数据建设方法论OneData
  18. 游戏计算机中有缓冲内存吗,内存再大都不行!CPU缓存竟这么重要
  19. 梦雨百度网盘批量改名与文件批量复制
  20. 抖音账号答题解封的入口在哪?这篇文章给你讲清楚。给大家2个提醒。

热门文章

  1. 前端辅助开发工具积累
  2. 了解vue里的Runtime Only和Runtime+Compiler
  3. 可覆写的函数与创建节点
  4. 使用Identity Server 4建立Authorization Server (4)
  5. Tuning SQL via case when statement
  6. 机器学里面的一些概念-召回率,精确度等的介绍
  7. 用户体验至上:40亿美金的ClickUp重新整合生产力工具
  8. 互联网医疗上市“大逃杀”
  9. 18亿用户、10万条电源线、4200万月活......创业者的底限究竟在哪里?
  10. 【pmcaff】一个微信创业者的吐血总结,这样才能做好营销,实用!