创建一个类:
最简单的一个类
在python中类的命名必须以字母或者下画线开头,并且只能包含字母、下画线和数字。另外推荐使用驼峰命名方式(大写字母开头,随后的任意一个单词都以大写字母开头)
python最简单的一个类的创建

  1. class MyFirstClass:
  2. pass

类的属性和方法
在类中我们还可以为其添加属性和方法

  1. class MyFirstClass:
  2. def __init__(self):
  3. self.x = 1
  4. self.y = 1
  5. def show(self):
  6. print(self.x,self.y)
  7. c = MyFirstClass()
  8. c.show()

其中self.x和self.y为该类的属性,show()为该类的方法
类中的方法的定义方式和普通函数相同,都是以关键字def开头,但是有一点不同的是类中的方法有一个必需的参数,通常这个参数被命名为self,但是我们实例化类后调用show方法的时候并没有传入参数,这是因为python自动帮我们做了,当我们调用c对象的show方法的时候,python会自动将c对象传给show方法了。因此下面这个调用方式运行结果是一样的。

  1. c = MyFirstClass()
  2. MyFirstClass.show(c)

其实类中的方法本质上就是一个函数,我们可以在外部调用也可以在类中调用,例如:

  1. class Point:
  2. def __init__(self, x ,y ):
  3. self.x = x
  4. self.y = y
  5. def reset(self):
  6. self.x = 0
  7. self.y = 0
  8. self.show()
  9. def show(self):
  10. print(self.x, self.y)
  11. p = Point(1,1)
  12. p.reset()

运行结果为:0  0
类的初始化
一般的编程语言中都有一个叫构造函数的特殊方法,当它被创建的时候会创建和初始化对象,这一点Python会有些许不同,python有一个构造函数和一个初始化函数,一般情况下构造函数很少被用到,除非是想实现一些特别的操作,所以在此主要说一下类的初始化。我们在之前的示例中有一个方法名为__init__(),其实这个方法就是给类进行初始化操作的。当我们实例化的时候会首先执行__init__()方法,因此当__init__()方法需要传递参数的时候我们在实例化的时候同样需要传递参数,不然会报错
由于方法本质上就是函数,当我们不想传递参数的时候也可以同函数的操作一样使用默认参数。

  1. def __init__(self, x=0, y=0):
  2. self.x = x
  3. self.y = y

面向对象三个基本特征
面向对象编程的三个基本特征分别为:封装、继承、多态,下面一一说明。
继承
继承就是让一个类获得另一个类的属性和方法在Python中所有的类都是object类的子类,只是在实际的使用中我们并不需要表明,python在后台自己帮我们做了

原文:https://blog.csdn.net/FanMLei/article/details/79982750

Python3 类(2)相关推荐

  1. Python3——类

    Python3 -- 类 目录 Python3 -- 类 创建和使用类(class) 继承(class Man(People)) 导入类(与导入模块一样) 创建和使用类(class) 类:属性,方法 ...

  2. python3类的继承详解_基于python3 类的属性、方法、封装、继承详解

    下面小编就为大家带来一篇基于python3 类的属性.方法.封装.继承实例讲解.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 Python 类 Python中的类提供了 ...

  3. python3类的继承详解_python3中类的继承以及self和super的区别详解

    python中类的继承: 子类继承父类,及子类拥有了父类的 属性 和 方法. python中类的初始化都是__init__().所以父类和子类的初始化方式都是__init__(),但是如果子类初始化时 ...

  4. python3类的继承详解_python3 多重继承机制

    由于python中包含多重继承机制,那么子类在多重继承中,到底用的是哪一个超类的方法就是大家关心的问题,之前在查阅已有书籍无果后,只得去翻官方文档与博客,终于得解,于是在此总结归纳. 全称 方法解析顺 ...

  5. python3 类的相关内容

    转自:https://blog.csdn.net/rozol/article/details/69317339 相当的详细 定义类 #coding=utf-8 # class_my.py 定义类 (新 ...

  6. python3 类的继承

    1.继承的定义 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类. 2.单继承和多继承 class ParentClass1 ...

  7. python3 类字符串名实例化对象

    方法一: class obj(object): pass a = eval('obj()') 方法二: # 如果是经常需要这样可以 # 将用来创建对象的字符串预编译成code对象. create_ob ...

  8. Python3 类和继承和组合

    1 import random as r 2 3 class Fish: 4 def __init__(self): 5 self.x = r.randint(0,10) 6 self.y = r.r ...

  9. python3类与对象汽车,Python3 类与对象

    面向对象基础 面向过程编程 面向过程的核心是'过程'二字, 过程指的是做事情的步骤, 既先做什么再做什么 基于该编程思想编写程序, 就好比一条工厂流水线, 一种机械式的思维方式优点: 逻辑清晰, 复杂 ...

  10. 蓝桥杯 省赛 python_第十一届蓝桥杯软件省级大赛第二场python3,类省赛,Python3

    试题 A: 门牌制作 本题总分:5 分 [问题描述] 小蓝要为一条街的住户制作门牌号. 这条街一共有 2020 位住户,门牌号从 1 到 2020 编号. 小蓝制作门牌的方法是先制作 0 到 9 这几 ...

最新文章

  1. 地球5000年变化全景动画——看完叹了口气:整个世界安静了
  2. pandas将列表list插入到dataframe的单元格中、pandas使用read_csv函数读取文件并设置保留数值的前置0( leading zeroes)
  3. 电子小帮手电路中电源开关电路分析
  4. AI也能写高考作文?我们用清华刚刚开源的「九歌」试了试
  5. Skype For Business 2015实战系列2:安装活动目录
  6. 【Python爬虫学习笔记11】Queue线程安全队列和GIL全局解释器锁
  7. 第一范式,第二范式,第三范式,BCNF范式理解
  8. Apache 更改80端口
  9. 阿里云iconfont使用方法
  10. 梅特勒托利多xk3124电子秤说明书_梅特勒托利多电子称设置方法
  11. 起底白帽黑客郭盛华读过的学校,看完流眼泪了!
  12. 氚云ajax,氚云帮助中心
  13. 2017南京大学计算机考研复试分,2018.的南大复试考生,:2017南京大学中国古代史考研复试经...
  14. MySQL数据库怎么进行分库分表?
  15. 家乐福中国独立上市,是苏宁的一颗“定心丸”吗?
  16. 【学堂上新】Unity UGUI 渲染 3D 对象详解
  17. Python基础知识学习笔记(一)
  18. 机器学习——科学计算库(Numpy,Matplotlib,Pandas)
  19. options 请求
  20. shell经典,shell十三问

热门文章

  1. 51nod 1067 Bash游戏 V2 博弈
  2. DB2创建数据库示例
  3. 浙江工业大学校赛 XiaoWei的战斗力
  4. linux tricks 之数据对齐。
  5. vs2010等宽字体设置
  6. PHP导出数据库数据字典脚本
  7. vector向量容器的一些基本操作
  8. 图像放缩中最近邻插值和双线性插值的基本原理
  9. 拓端tecdat|R语言主题模型LDA评估公司面临的风险领域与可视化
  10. java字符串计数从零还是从一,java – 计数和所有字符相同的最大字符串的起始索引...