常见内置函数

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

  • 示例1:setattr、getattr、delattr

class Person:
# def __init__(self, name):
# self.name = name def __setattr__(self, key, value):
# 当设置对象成员属性的时,系统会自动调用
print(key, value)
self.__dict__[key] = value def __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 = 18 print(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']

python 常见内置函数setattr、getattr、delattr、setitem、getitem、delitem的更多相关文章

  1. python常见内置函数总结

    简单的内置函数 len    求长度 min   求最小值 max  求最大值 sorted  排序 reversed   反向 sum   求和 进制转换 bin   转为二进制 oct   转为八 ...

  2. python常见内置函数

    一. map( ) 映射 l = [1,2,3,4] print(list(map(lambda x:x+1,l))) # 获取列表中每个元素并传递给匿名函数运算保存返回值 二. zip( ) 拉链 ...

  3. 如何查看Python的内置函数

    经常调用的时候不知道python当前版本的内置函数是哪些,可以用下面的指令查看: C:\Users\Administrator>python Python 2.7.11 (v2.7.11:6d1 ...

  4. python基础-内置函数详解

    一.内置函数(python3.x) 内置参数详解官方文档: https://docs.python.org/3/library/functions.html?highlight=built#ascii ...

  5. python基础——内置函数

    python基础--内置函数  一.内置函数(python3.x) 内置参数详解官方文档: https://docs.python.org/3/library/functions.html?highl ...

  6. Python的内置函数

    python的内置函数一共有68个,下面将简单介绍各个函数的功能. abs() dict() help() min() setattr() all() dir() hex() next() slice ...

  7. python print()内置函数

    啦啦啦啦啦啦,我又来了,学习任何东西都得坚持,我一定的好好加油!!! 今天来说说print()函数,前边我们已经用过好好多次啦,现在来学习哈吧!!! Python的内置函数,print() print ...

  8. python_way,day3 集合、函数、三元运算、lambda、python的内置函数、字符转换、文件处理

    python_way,day3 一.集合 二.函数 三.三元运算 四.lambda 五.python的内置函数 六.字符转换 七.文件处理 一.集合: 1.集合的特性: 特性:无序,不重复的序列 如果 ...

  9. Python入门-内置函数一

    什么是内置函数?就是python给你提供的拿来直接用的函数,比如print,input等等,截止到python版本3.6.2 python一共提供了68个内置函数,他们就是python直接提供给我们的 ...

随机推荐

  1. CentOS7设置开机启动方式(图形界面/命令行界面)

    CentOS 7由于使用systemd而不是init,所以不能通过修改inittab文件来修改开机启动模式. 先使用ctrl+alt+f2切换到命令行模式,然后输入命令:systemctl set-d ...

  2. CSS层叠样式表的层叠是什么意思

    层叠的意思就是“继承”.“权重”.“覆盖”,通过良好的层级命名更好的实现效果,更少的代码,更多的功能,下面为大家详细介绍下,感兴趣的朋友不要错过   解答一: 层叠指的是样式的优先级,当产生冲突时以优 ...

  3. Java堆大小[z]

    JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理内存限制. 32位系统下,一般限制在1.5G~2G:64为操作系统对内存 ...

  4. 深度学习之GAN对抗神经网络

    1.结构图 2.知识点 生成器(G):将噪音数据生成一个想要的数据 判别器(D):将生成器的结果进行判别, 3.代码及案例 # coding: utf-8 # ## 对抗生成网络案例 ## # # # ...

  5. IDEA使用git

    本文转自:http://www.cnblogs.com/java-maowei/p/5950930.html 一.安装git 下载地址:  https://git-scm.com/download/w ...

  6. nodejs的事件循环1

    JavaScript的学习零散而庞杂,因此很多时候我们学到了一些东西,但是却没办法感受到自己的进步,甚至过了不久,就把学到的东西给忘了.为了解决自己的这个困扰,在学习的过程中,我一直试图在寻找一条核心 ...

  7. [转]html里a标签中href调用js的几种方法

    文章转自:https://blog.csdn.net/best_luxi/article/details/45062301 我们常用的在a标签中有点击事件: 1. a href=”javascript ...

  8. React Native pod install报错 `Yoga (= 0.44.3.React)` required by `React/Core (0.44.3)`

    使用pod安装,可能会因为Podfile的路径指向错误或者没有路径指向因为报错. 报错截图如下: 这是因为在指定的路径没有寻找到相应的组件.此时就需要修改podfile文件中的路径,由于上方提示没有  ...

  9. springboot-定时任务-单线程

    import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.scheduling.annot ...

  10. PHP学习(9)——错误和异常处理

    1.Exception类 这个类是PHP为异常处理提供的内置类.构造函数的两个参数分别是错误消息和错误代码. 除了构造函数之外,该类还提供了如下的内置方法: · getCode() 返回传递给构造函数 ...