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. 实例属性:指的是实例化类对象 ...
随机推荐
- create-react-app 构建的项目使用 css module 方式来书写 css
先 yarn eject 释放出来配置文件具体参见我之前写过相关的文章(这里不再重复), 找到 config 文件夹下的文件如下图所示: 找到如图所示的配置: 书写 css 的文件名例如(App.mo ...
- 局域网 ARP 欺骗原理详解
局域网 ARP 欺骗原理详解 ARP 欺骗是一种以 ARP 地址解析协议为基础的一种网络攻击方式, 那么什么是 ARP 地址解析协议: 首先我们要知道, 一台电脑主机要把以太网数据帧发送到同一局域网的 ...
- Python3.X Selenium 自动化测试中如何截图并保存成功
在selenium for python中主要有三个截图方法,我们挑选其中最常用的一种. 挑最常用的:get_screenshot_as_file() 相关代码如下:(下面的代码可直接复制) # co ...
- Hadoop监控指标项
配置 修改$HADOOP_HOME/etc/hadoop/hadoop-env.sh # 在配置namenode和datanode时都会有用到JMX_OPTS的代码,是为了减少重复提取出的公共代码 e ...
- sqlmap自动注入 --REQUEST
--delay=“参数” 每次http(s)请求之间的延迟时间,浮点数,单位为秒,默认无延迟 --timeout=“参数” 请求超时,浮点数,默认为30秒 --retries=“参数” http(s) ...
- C++入门经典-例6.18-数组的动态分配,动态获得斐波那契数列
1:有时在获得一定的信息之前,我们并不确定数组的大小.动态分配数组则可以使用变量作为数组的大小,使数组的大小符合我们的要求. 2:科普一下斐波纳契数列:斐波那契数列指的是这样一个数列 1, 1, 2, ...
- Spark学习(一)——Spark运行架构
基本概念 在具体讲解Spark运行架构之前,需要先了解几个重要的概念: RDD:是弹性分布式数据集(Resilient Distributed Dataset)的简称,是分布式内存的一个抽象概念,提供 ...
- 如何将浏览器上的JS文件屏蔽
在学习自定验证时,需要在页面上进行调试运行结果,这时的JS会影响运行结果的显示,所以我们会将JS代码屏蔽掉,那么我们该如何做呢? 第一步: 在浏览器地址栏输入about:config 点击“我保证会 ...
- RF中BDD编写
工程结构 用户关键字 测试用例 运行日志
- easyhook报错The given 64-Bit library does not exist
在调用 RemoteHooking.Inject 时,报错 查看easyhook源代码,出错位置如下 if(!RtlFileExists(UserLibrary)) { #ifdef _M_X64 T ...