首页 / PYTHON / Python面对对象编程1
Python面对对象编程1
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python面对对象编程1,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3184字,纯文字阅读大概需要5分钟。
内容图文
![Python面对对象编程1](/upload/InfoBanner/zyjiaocheng/600/3e49472fd8f7414eb19ca3410d436672.jpg)
一、面对对象编程
面向对象编程(英语:Object-oriented programming,缩写:OOP)是一种编程理念,这种编程理念更符合我们人的逻辑思维。使用面向对象编程可以提高我们的开发速度和代码的重用率。面向对象的开发非常适合大型程序开发,开发速度和后期维护都比过程化开发要好很多。
二、面向对象和面向过程
面向过程和面向对象都是用来解决问题的,只是解决问题的思路不同。
面向过程可以理解亲力亲为,面向对象可以理解为坐享其成。
例如炒菜
面向过程:
1)菜市场买菜,2)讨价还价,3)洗菜,4)切菜,5)炒菜,6)吃
面向对象:
- .点开APP,2).下订单 3).吃
面向过程:
在生活中就是亲力亲为,在程序中面向过程编程就是函数之间的一个相互调用。以函数为基本结构使用。
面向对象在生活中是坐享其成,别人做好的东西为我所用。在程序中面向对象编程是以对象为基本结构使用。
那什么是对象呢?
三、对象和类的相关概念
1.类
生活中的类和对象概念
类:是对一群具有相同特征或者行为的事物的统称,是抽象的,不能直接使用。
例如人类狗类猫类…
描述一个类通过行为和特征
行为:会跑,会叫
特征:黄毛,大眼睛
类可以理解为一种事物的模板
2.对象
对象:是由类创造出来的具体实体,可以直接使用的。例如 大黄,小白。
3. 类和对象之间的关系
(1)先有类后有对象
(2)类只有一个对象可以有多个
4.类的设计
在程序中设计一个类,通常需要满足一下3个要素:
类名:大驼峰命名法。
属性:描述这类事物的特征。
方法:描述这类事物的具体行为。
四、定义一个简单的类(只包含方法)
#定义类
class dog:
def say(self):
"""这是小狗的通用方法"""
print("旺······")
#创建对象
tom=dog()#生出一个具体的小狗
tom.say()#小狗的叫声
#旺······
练习:设计一个人类,人会吃,会说话
class Person:
def eat(self):
print('你们见过每天吃三顿自助餐吗?')
print('eat中的id的值--->',id(self))
def speak(self):
print('初次见面,请多关照!')
print('speak中的id值--->',id(self))
xz=Person()
xz.eat()
print('xz的id值--->',id(xz))
xl=Person()
xl.speak()
print('xl的id值--->',id(xl))
五、self变量
self : 哪个对象调用方法或者属性,self就是那个变量。
练习查看 self和 对象的内存id值是否相同。
class Person:
def eat(self):
print('eat方法中的sel:',id(self))
print('吃······')
def speak(self):
print('speak方法中的sel:',id(self))
print('说话······')
xz=Person()
xz.eat()
xz.speak()
print('对象的id:',id(xz))
print('-----------------')
xl=Person()
xl.eat()
xl.speak()
print('对象的id:',id(xl))
输出结果:
eat方法中的sel: 31067728
吃······
speak方法中的sel: 31067728
说话······
对象的id: 31067728
-----------------
eat方法中的sel: 31362256
吃······
speak方法中的sel: 31362256
说话······
对象的id: 31362256
六、在类的外部增加属性
方式: 对象名.属性名=值
注意:这种方式虽然简单,但是不推荐使用
class Person:
def speak(self):
print('初次见面,请多关照!')
#打印name的值
print(self.name)
p=Person()
p.name='张三'
p.speak()
七、init()方法
init()内置方法在创建对象的时候自动执行。
我们可以在 init()中做一些初始化操作。
练习1:创建Cat类,在 init()方法中初始化name属性的值
class Cat:
def __init__(self):
print('我是初始化方法,')
self.name='Tom'
cat=Cat()
print(cat.name)
八、str()方法
打印对象的名称时默认调用的是__str__()方法,此方法默认返回的是对象的内存地址。
我们可以重写 str() 方法打印对象保存的信息。
class Dog:
def __init__(self,new_name,new_age):
self.new_name=new_name
self.new_age=new_age
def __str__(self):
return "%s的年龄是:%d" % (self.new_name,self.new_age)
dog=Dog("Tom",3)
print(dog)
#Tom的年龄是:3
内容总结
以上是互联网集市为您收集整理的Python面对对象编程1全部内容,希望文章能够帮你解决Python面对对象编程1所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。