Python进阶编程 面向对象
一.面向对象
1.1面向对象的基本格式
class 类名:
def 方法名(self):
print(123)
return 123
def 方法名(self):
print(123)
return 123
###调用类中的方法###
#1.实例化一个对象
obj=类名()
#2.通过对象调用方法
result=obj.方法名()
类名的角度调用类中的属性.
1. 查看类中的所有的内容. 类名.__dict__只用于获取类中的全部.
# print(Student.__dict__)
# print(Student.__dict__['daily'])
万能的 .点.
print(Student.daily) # 查
Student.cloth = '校服' # 增
print(Student.__dict__)
Student.examination = '不考试!' # 改
print(Student.examination)
del Student.daily # 删
print(Student.__dict__)
一般类中的属性都是通过类名.的方式去操控的.
实例化对象发生的三件事
- 在内存中创建一个对象空间.*
- 自动执行__init__方法,并且将对象空间传给self参数.*
- 执行__init__方法里面的代码,给对象空间封装其属性.*
class Student:
"""
此类是构建学生类
"""
daily = '学习'
examination = '考试'
def __init__(self,n,a,h):
# self.n = '小黑'
# self.sex = '随便'
self.name = n
self.age = a
self.hobby = h
def work(self,c):
# self.color = '绿色'
self.color = c
print(f'{self.name}每天要上课')
def homework(self):
# 利用self 对象空间,为所欲为
print('家庭作业')
对象操作对象里面的属性.
对象查看全部属性
print(obj.__dict__)
对象可以操作对象空间的属性 万能的点
obj.age = '29' # 增
del obj.n # 删
obj.sex = '女'# 改
print(obj.n) # 查
对象查看类中的属性.
对象查看类中的属性.
print(mc_sq.daily)
对象调用类中的方法
liye.work('绿油油')
print(liye.__dict__)
从空间角度研究类
**对象如果查询一个属性: 对象空间 ----> 类空间 ----> 父类空间 **
类查询一个属性: 类空间 ----> 父类空间
对象与对象之间原则上互相独立(除去组合这种特殊的关系之外).
Python进阶编程 面向对象的更多相关文章
- Python进阶(十三)----面向对象
Python进阶(十三)----面向对象 一丶面向过程编程vs函数式编程vs面向对象编程 面向过程: 简而言之,step by step 一步一步完成功能,就是分析出解决问题所需要的步骤,然后用函 ...
- python进阶01 面向对象、类、实例、属性封装、实例方法
python进阶01 面向对象.类.实例.属性封装.实例方法 一.面向对象 1.什么是对象 #一切皆对象,可以简单地将“对象”理解为“某个东西” #“对象”之所以称之为对象,是因为它具有属于它自己的“ ...
- Python进阶之面向对象编程
面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 面向过程的程序设计把计算机 ...
- Python进阶之面向对象编程概述
Python面向对象编程(一) .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB& ...
- Python进阶之面向对象编程(二)
Python面向对象编程(二) .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB& ...
- Python 进阶_OOP 面向对象编程_组合与继承
#目录 前言 组合 派生 通过继承来覆盖重载方法 最常用的重载场景实例方法的重载 从标准类中派生类方法的重载 前言 我们定义一个类是希望能够把类当成模块来使用,并把类嵌入到我们的应用代码中,与其他的数 ...
- Python 进阶_OOP 面向对象编程_self 的实例绑定
目录 目录 self 和绑定 调用非绑定的方法 self 和绑定 在 Python 中 self 变量是特殊的, 其用于在实例方法中引用该方法所绑定的实例, 换句话说就是 Python 在实例化对象时 ...
- Python 进阶_OOP 面向对象编程_实例属性和方法
目录 目录 构造器和解构器 构造器 __init__ 真构造器 __new__ 解构器 __del__ 实例方法 Python 中的 抽象方法 实例属性 查看实例属性 实例属性和类属性的区别 访问不可 ...
- Python 进阶_OOP 面向对象编程_类属性和方法
目录 目录 类属性 调用类属性 查看类属性 特殊的类属性 类方法 真构造器 __new__ 类属性 在理解类属性之前要先搞清楚 实例属性 和 函数属性 之间的区别: 1. 实例属性:指的是实例化类对象 ...
随机推荐
- CodeForces 352C Jeff and Rounding
题意 有一个含有\(2n(n \leqslant2000)\)个实数的数列,取出\(n\)个向上取整,另\(n\)个向下取整.问取整后数列的和与原数列的和的差的绝对值. 就是说,令\(a\)为原数列, ...
- BZOJ 4555 Luogu P4091 [HEOI2016/TJOI2016]求和 (第二类斯特林数)
题目链接 (luogu) https://www.luogu.org/problem/P4091 (bzoj) https://www.lydsy.com/JudgeOnline/problem.ph ...
- python学习之路(4)
使用list和tuple Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >& ...
- set集合 ,深浅拷贝
一 之前内容的补充 1.join() 将列表转换成字符串 2.split()将字符串转换成列表 3列表和字典在进行For循环时是不可以删除的(准确的说是删除的不彻底) 删除操作需要先创建一个新的空列 ...
- ActiveMQ 初学-1:ActiveMQ 创建连接对象
县创建mq的连接工厂对象 ActiveMQConnectionFactory // 1 建立ConnectionFactory 工厂对象,需要填入,需要填入用户名密码, // 用户名 密码 在 ...
- vue组件化初体验 全局组件和局部组件
vue组件化初体验 全局组件和局部组件 vue组件化 全局组件 局部组件 关于vue入门案例请参阅 https://www.cnblogs.com/singledogpro/p/11938222.h ...
- leetcode-easy-listnode-237 Delete Node in a Linked List
mycode # Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # sel ...
- cucumber+selenium
工程结构 pom <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht ...
- doctype是什么?
1.<!doctype>声明必须处于HTML文档的头部,在<html>标签之前,HTML5中不区分大小写 2.<!doctype>声明不是一个HTML标签,是一个用 ...
- fixture详细介绍-作为参数传入,error和failed区别
前言 fixture是pytest的核心功能,也是亮点功能,熟练掌握fixture的使用方法,pytest用起来才会得心应手! fixture简介 fixture的目的是提供一个固定基线,在该基线上测 ...