zoukankan      html  css  js  c++  java
  • python下的一些特殊属性(几个实例说明)

    实例1:

    #-*-coding:UTF-8-*-
    
    class  FirstDemo(object):
        """
            这里是一个doc
        """
        a=10   #类属性
        def  demo(self):
            """
            第一个方法
            """
            pass
        def demo2(self):
            """
            第二个方法
            """
            pass
    print FirstDemo.__dict__   #打印出FirstDemo类的所有属性和方法,结果为一个字典
    print FirstDemo.__bases__  #类的基类
    print FirstDemo.__doc__    #类的docstring
    print FirstDemo.__name__   #类的名字
    print FirstDemo.__module__ #类所在模块,如果是主文件,就是__main__
    
    
    print FirstDemo().__class__    #类的类型<class '__main__.FirstDemo'>
    print FirstDemo().__module__   #实例类型所在模块
    print FirstDemo().__dict__     #对象的字典,存储所有实例成员信息


     实例2:

    #-*-coding:UTF-8-*-
    
    class  FirstDemo(object):
        b=100   #类属性
        def __init__(self):
            FirstDemo.b=200
        def __repr__(self):
            return "repr方法"
        def __str__(self):
            return "str方法"
        def  demo(self):
            print FirstDemo.b
    a=FirstDemo()
    print a.__repr__()
    print a.__str__()
    print "--------"
    a.demo()
    


    结果:

    repr方法
    str方法
    --------
    200

    序号 目的 所编写代码 Python 实际调用
    初始化一个实例 x = MyClass() x.__init__()
    字符串的“官方”表现形式 repr(x) x.__repr__()
    字符串的“非正式”值 str(x) x.__str__()
       
       

    最后打印的b的值为200,是因为__init__()方法的调用发生在实例被创建之后。

    实例3(对象属性的操作):

    #-*-coding:UTF-8-*-
    
    class  FirstDemo(object):
        b=100   #类属性
        def __init__(self):
            FirstDemo.b=200
        def __repr__(self):
            return "repr方法"
        def __str__(self):
            return "str方法"
        def  demo(self):
            print FirstDemo.b
    a=FirstDemo()
    a.temp=500   #为对象添加一个属性
    print a.__dict__  #查看对象的实例属性字典
    print dir(a)   #列出实例的属性和方法集合
    del a.temp	#删除对象中的temp属性
    print a.__dict__
    print dir(a)


     

  • 相关阅读:
    Asp.Net选择TreeView前面的复选框引起回发
    Asp.Net自动发送邮件代码
    Asp.Net类型转换类(通用类)
    Eclipse 快捷键
    结对项目开发之电梯调度问题
    输出文章中几个最高频率单词和次数
    求整数数组中和最大的子数组的和
    Android定位功能(二)
    分布式拒绝服务攻击(DDoS)原理及防范
    定义Profile用户文件详解
  • 原文地址:https://www.cnblogs.com/chenjianhong/p/4145145.html
Copyright © 2011-2022 走看看