zoukankan      html  css  js  c++  java
  • Python中__init__的用法和理解

    在Python中定义类经常会用到__init__函数(方法),首先需要理解的是,两个下划线开头的函数是声明该属性为私有,不能在类的外部被使用或访问。而__init__函数(方法)支持带参数类的初始化,也可为声明该类的属性(类中的变量)。__init__函数(方法)的第一个参数必须为self,后续参数为自己定义。

    从文字理解比较困难,通过下面的例子能非常容易理解这个概念:

    例如我们定义一个Box类,有width, height, depth三个属性,以及计算体积的方法:

    #!/usr/bin/python
    # -*- coding utf-8 -*-
    #Created by Lu Zhan
    
    class Box:
    def setDimension(self, width, height, depth):
    self.width = width
    self.height = height
    self.depth = depth
    
    def getVolume(self):
    return self.width * self.height * self.depth
    
    b = Box()
    b.setDimension(10, 20, 30)
    print(b.getVolume())


    我们在Box类中定义了setDimension方法去设定该Box的属性,这样过于繁琐,而用__init__()这个特殊的方法就可以方便地自己对类的属性进行定义,__init__()方法又被称为构造器(constructor)。

    #!/usr/bin/python
    # -*- coding utf-8 -*-
    #Created by Lu Zhan
    
    class Box:
    #def setDimension(self, width, height, depth):
    # self.width = width
    # self.height = height
    # self.depth = depth
    def __init__(self, width, height, depth):
    self.width = width
    self.height = height
    self.depth = depth
    
    def getVolume(self):
    return self.width * self.height * self.depth
    
    b = Box(10, 20, 30)
    print(b.getVolume())


     
    ---------------------

    来源:https://blog.csdn.net/luzhan66/article/details/82822896

  • 相关阅读:
    linux系统调优工具
    搭建ceph分布式文件系统
    ansible管理windows主机
    jenkins结合ansible发布
    Linux系统安全配置
    tomcat 的安全配置预防后台被攻击
    【9】添加主页日志列表展示
    【8】添加新建/编辑博客逻辑
    【7】使用css/js/html模板来实现一个注册、登录和管理的功能
    Ubuntu下给Sublime Text 3添加用python3运行文件
  • 原文地址:https://www.cnblogs.com/liuyanhang/p/11139103.html
Copyright © 2011-2022 走看看