在 Python 的类中,有一种特殊的方法——初始化方法。它的格式是 def __init__(self):,方法名由 init(initialize 的缩写,初始化的意思)加左右两边的 双下划线 组成。

初始化方法的特殊之处是:每当进行类的实例化时,初始化方法会自动被执行。我们看个例子:

class Human:def __init__(self):print('Hi,我是 Human 类的初始化方法')human = Human()
# 输出:Hi,我是 Human 类的初始化方法我们可以看到,我们只是创建了实例,并没有调用 __init__ 方法,它自己就自动执行了。利用这个特性,我们通常会在 初始化方法 里完成类属性初始值的设置。比如:
class Human:def __init__(self):# self.不能丢self.arms = 2self.legs = 2self.hair = '各种颜色的头发'def walk(self):print('直立行走')def speak(self):print('说着各式各样的语言')human = Human()
print(human.hair)
# 输出:各种颜色的头发除了进行固定的初始值设置,初始化方法 可以接收其他参数,进行自定义的属性初始值设置。我们再看个例子:
class Human:def __init__(self, name, arms, legs, hair):# self.不能丢self.name = nameself.arms = armsself.legs = legsself.hair = hairdef walk(self):print('直立行走')def speak(self):print('说着各式各样的语言')def intro(self):print('我叫{},我有{}'.format(self.name, self.hair))xiaobei = Human('小贝', 2, 2, '粉红色的头发')
print(xiaobei.name)
# 输出:小贝xiaobei.intro()
# 输出:我叫小贝,我有粉红色的头发

我们给 初始化方法 额外添加了 4 个参数,因此在实例化的时候要传入对应的值。Human('小贝', 2, 2, '粉红色的头发') 这里的 '小贝' 赋值给 self.name,两个 2 分别赋值给 self.arms 和 self.legs,'粉红色的头发' 赋值给 self.hair。

当实例化完成之后,初始化方法会自动执行,这样我们就完成了自定义的属性初始值设置。然后我们可以通过 实例名.属性名 在类外访问或 self.属性名 在类的方法中访问了。

python 中类的初始化方法相关推荐

  1. Python中类的继承方法

    Python中类与类之间可以继承,继承的叫父类或超类,新创建的叫子类.通过继承,子类可以使用父类的属性,这样可以有效减少代码的冗余度,提高代码重用性. 谈到类的继承,首先要了解构造函数或构造方法. 构 ...

  2. python中类的定义方法_Python类的定义、方法和属性使用

    类用来描述具有相同的属性和方法的对象的集合. 对于在类中定义的函数,称为方法. 类变量不直接叫做类变量,称为属性. 1.类的定义 例子: classUser():pass 说明: (1)定义了一个类名 ...

  3. Python中类的约束方法

    1.python推荐 class Payment:def pay(self,money):raise Exception('按照规范来可以吗?')class Ali(Payment):def pay( ...

  4. Python中类-继承和方法的重写

    什么是继承 继承就是让类与类之间产生父子关系,子类可以拥有父类的静态属性和方法 继承就是可以获取到另一个类中的静态属性和普通方法(并非所有成员) 在python中,新建的类可以继承一个或多个父类,父类 ...

  5. python中类的定义方法_在Python中定义类变量的正确方法

    这两种方法都不一定正确或不正确,它们只是两种不同的类元素:方法__init__之外的元素是静态元素:它们属于类. __init__方法中的元素是对象(self)的元素:它们不属于类. 使用一些代码可以 ...

  6. python类的初始化方法_python学习之-对象的的初始化与__init__方法

    class OldboyStudent: # name='xxxx' # 相似的特征: school = 'oldboy' # 相似的技能 def choose_course(self): print ...

  7. python类的初始化方法___python类的初始化方法

    我相信前段时间我也遇到过类似的问题,不确定我的解决方案是最佳实践,但它确实实现了我的目标,即为每个用户创建一个datetime变量,得到调查的开始时间,我只需要在Get方法(survey start) ...

  8. python中类的定义方法_python中类的定义方法

    #coding =utf-8 ## 类的定义##-------------------------------------------------- classEmployee: empCount=0 ...

  9. pythonlist初始化_Python中list初始化方法示例

    这篇文章主要介绍了Python中list初始化方法,分析了list初始化常用的方法与相关使用注意事项,需要的朋友可以参考下 本文实例讲述了Python中list初始化方法.分享给大家供大家参考,具体如 ...

最新文章

  1. HandlerThread 类的学习(转载)
  2. JavaSE(二十四)——冒泡排序、选择排序、直接插入排序以及二分查找
  3. css div 垂直居中设置
  4. 阿里面试官:什么样的人能在阿里晋升?
  5. sqlmap安装_黑客神器系列篇章之“sqlmapquot;
  6. wikioi 1034 家 实时动态的网络流量(费用流)
  7. 怎么删除mysql的所有文件内容_mysql删除全部数据库
  8. 大厂也在用的6种数据脱敏方案,醍醐灌顶!
  9. c++查找pair,使用map,unordered_map,vector
  10. python猜数字游戏续_python3实现猜数字游戏
  11. c语言编程算法精选,c语言经典程序算法【DOC精选】.doc
  12. Jmeter(三)断言和关联
  13. HTML5概述、标签
  14. [LeetCode系列] 跳跃问题II
  15. BZOJ 1304: [CQOI2009]叶子的染色
  16. spss因子分析结果解读_【SPSS数据分析】SPSS聚类分析(R型聚类)的软件操作与结果解读 ——【杏花开生物医药统计】...
  17. 新闻分类:多分类问题
  18. win7 64位系统加载dsoframer.ocx问题解决方法
  19. Java中就什么是映射的简单理解
  20. 电脑脑运行快捷键是什么,电脑运行窗口快捷键

热门文章

  1. 卷王:大厂周报已经长达30页
  2. The ATIS Spoken Language Systems Pilot Corpus
  3. 深度学习炼丹-数据标准化
  4. Pretty girl愿你的美貌,有不惧时光的质感
  5. 03_Platform总线设备驱动
  6. 使用Keil内置工具一键为工程安装FreeRTOS
  7. 关于瑞纽博环境集团李兵吃骗员工,拖欠员工4个多月工资至今未发,怎么办?
  8. 普乐蛙VR体验馆设备|VR航天科普|VR文旅项目解决方案
  9. 水墨-在线 Markdown 编辑器
  10. 总部在浙江省的几家银行基本数据对比表