python面向对象基础入门

面向对象

基本的实现方法大概如此

python 复制代码
class Student(object):
    def __init__(self, name, score):
        self.name = name
        self.score = score

    def print_score(self):
        print('%s: %s' % (self.name, self.score))

在面向对象的思想中,面对一个问题,首先应该考虑这个问题所对应的对象应该有什么属性,即数据

在这段代码中,

括号中的object为继承的类,如果没有合适的继承类,默认写上object,self为必须要写入的参数

实例化:名字 = 对象(有参数则写参数) -- self不用传入

在实例化后也可以增加属性(对象是动态的)

让内部属性不被外部访问,可以把属性的名称前加上两个下划线__

但本身仍然可以被访问,通过在访问时加入跟定义时一样加入两个下划线进行访问,但强烈建议不要这么做

继承与多态

判断一个变量是否是某个类型可以用isinstance()判断,括号中写入两个参数

继承和多态的应用主要通过外部函数调用中不同的对象参数,可以呈现出不同的方法调用

核心:参数为父类,而接收的类型既可以是父类,也可以是继承该父类的子类

当然,只要对象中有同样的方法,可以不严格参照继承的体系

相关推荐
睡觉待开机几秒前
python-判断语句(黑马程序员B站Python免费教学, 第三章内容总结)
python
点云SLAM1 分钟前
C++创建文件夹和文件夹下相关操作
开发语言·c++·算法
2301_809177476 分钟前
2025.01.15python商业数据分析
开发语言·python
ghostwritten11 分钟前
学习 Python 编程的规则与风格指南
python·学习
疯狂学习GIS12 分钟前
Python读取栅格图像并对像元数据处理后导出到表格文件中
python·rs·遥感数据
缘友一世16 分钟前
java实现网络IO高并发编程java AIO
java·网络·python
CodeClimb19 分钟前
【华为OD-E卷 - 猜字谜100分(python、java、c++、js、c)】
java·javascript·c++·python·华为od
_小柏_21 分钟前
C/C++基础知识复习(46)
c语言·开发语言·c++
Channing Lewis25 分钟前
python递归最多多少层
python
minstbe25 分钟前
AI开发:决策树模型概述与实现:从训练到评估和可视化 - Python
python·深度学习·知识图谱·集成学习