美文网首页
python类中系统自定义函数

python类中系统自定义函数

作者: GTiller | 来源:发表于2015-05-20 21:34 被阅读0次

标签: python类 双下划线特殊函数


今天遇到python类内部系统以双下划线开头和结尾的情况,特去学习一部分的应用情况,顺便记录一下。python 的OOP编程中,每个类拥有一些系统特殊定义的函数,比如__init__表示初始化类,相当于构造函数,建立对象时候会先调用这个方法来初始化一些成员变量。__del__表示析构函数,就是对象不再存在于作用空间时,会调用这个函数来释放空间。今天要记录两个比较特殊双下划线的函数:__getitem____contains__:

1、__getitem__、__contains__函数####

  • __getitem__函数表示通过索引获得数据,相当于data[key],通过在类中重写这个函数,我就可以使用该类的对象obj[key]来直接操作
  • __contains__函数在类的对象使用 in 和 not in时可以返回TRUE或者False。

2、代码####

class DoubleUnderline():
    def __init__(self, d=None):
        self.data = dict()
        self.data = d

    def __getitem__(self, key):
        print 'use __getitem__'
        return self.data[key]

    def __contains__(self, item):
        print 'use __contains__'
        return item in self.data


def main():
    data = dict()
    names = []
    for i in range(1, 5):
        names.append(str(i))
    val = 'a'
    for name in names:
        data[name] = val
        val = val + val
    dbline1 = DoubleUnderline(data) #类对象
    print dbline1['2']
    str1 = '3'
    print str1 in dbline1


if __name__ == "__main__":
    main()

3、输出结果####

use __getitem__
aa
use __contains__
True

4、使用环境####

一般对于dict词典数的应用比较合理,data[key]和 in、not in 对于词典数来说应用比较灵活。

5、其他类内部神奇函数如下链接####

Python 的神奇方法指南

相关文章

  • python类中系统自定义函数

    标签: python类 双下划线特殊函数 今天遇到python类内部系统以双下划线开头和结尾的情况,特去学习一部分...

  • 魔数方法(Magic Method)

    简介 所谓魔法函数(Magic Methods),是Python的一种高级语法,允许你在类中自定义函数(函数名格式...

  • python:类

    def 可以自定义一个函数class可以自定义一个类 类 class 是一个函数包。类中可以放置函数和变量类中...

  • 12、函数式编程(二)

    12.1 python中自定义排序函数 Python内置的sorted()函数可对list进行排序: >>>sor...

  • python 在vscode下自动补全

    VS Code python自定义类或者函数Import后无自动补全提示 用VS code写python,标准模块...

  • sql server 自定义函数

    函数分为系统函数,自定义函数。 系统函数 如聚合函数,max(),min() 等等系统提供的函数。 自定义函数 自...

  • 《笨办法学Python》笔记16-----命令、变量、代码、函数

    函数是用来完成某个特定功能的代码集合。 python中函数分为自定义函数和内置函数,内置函数是python为你提供...

  • [Python与数学建模-入门使用]-4函数

    1自定义函数语法   Python中自定义函数的语法如下:   函数通常使用三个单引号'''...'''来注释说明...

  • Python中的类与元类

    Python的类 在Python中类也是一个对象,可以使用type()内置函数动态创建类 函数type()实际是一...

  • Python中创建元类

    1 Python中的type函数 Python中可以使用type函数创建一个类,其中type函数的第一个参数为类的...

网友评论

      本文标题:python类中系统自定义函数

      本文链接:https://www.haomeiwen.com/subject/teblqttx.html