Python学习记录 面向对象

【算法】图解A* 搜索算法 A* 算法是启发式搜索算法,是根据Dijkstra算法改进而来。 问题引入 如下图所示,S为起始(start)节点,G为目标(goal)节点。 节点之间连线是两点的路径长度,如A到E的路径长度c(A,E) = 9。 节点旁的h值时当前节点到达目标节点(G)的预估值,如h(A)=15, 表示从当前点A到达目标点G的估计路径长度为15,此处h(x)即为启发函数,启发函数的设计有很多方法,具体可...... 阅读详情

2022.08.15 DAY31

面向对象三大特征

封装
  • 隐藏对象的属性和实现方法,只对外提供必要的方法。
继承
  • 继承可以让子类具有父类的特性,提高代码的重用性

  • 子类继承父类(基类)

  • python支持多重继承,一个子类可以继承多个父类。

  • 语法格式:

      class 子类类名(父类1[, 父类2, ...]):
          类体
    
  • 如果在类定义中没有指定父类,则默认父类为object类。也就是说,object是所有类的父类,里面定义了所有类的公有的默认实现,比如:_new_()。

  • 定义子类时,必须在其构造函数中调用父类的构造函数。调用格式如下:

      父类名.__init__(self, 参数列表)
    

实例:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def get_info(self):
        print(self.name, "的年龄为:", self.age)


class Student(Person):

    def __init__(self, name, age, score):
        Person.__init__(self, name, age)  # 必须显式调用父类的初始化方法,不然解释器不会去调用
        self.score = score

    def get_info(self):
        print(self.name, "的年龄为:", self.age, "分数为:", self.score)


def test():
    s = Student("YJP", 21, 149)
    s.get_info()
    print(dir(s))


if __name__ == "__main__":
    test()

运行结果:

YJP 的年龄为: 21 分数为: 149
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'age', 'get_info', 'name', 'score']
  • 成员继承:子类继承了父类除构造方法之外的所有成员。
  • 方法重写:子类可以重新定义父类中的方法,这样就会覆盖父类的方法,也称为重写。

重写案列:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def introduce_name(self):
        print("我的名字为:", self.name)

    def introduce_age(self):
        print("我的年龄为:{0}".format(self.age))


class Student(Person):

    def __init__(self, name, age, score):
        Person.__init__(self, name, age)  # 必须显式调用父类的初始化方法,不然解释器不会去调用
        self.score = score

    def introduce_name(self):
        """ 重写父类的方法 """
        print("大家好,我的名字为:", self.name)

    def introduce_age(self):
        """ 重写父类的方法 """
        print("大家好,我的年龄为:{0}".format(self.age))


def test():
    s = Student("YJP", 21, 149)
    s.introduce_name()
    s.introduce_age()


if __name__ == "__main__":
    test()

运行结果:

大家好,我的名字为: YJP
大家好,我的年龄为:21
Arcgis中的模型构建器(ModelBuilder)技术之批量图层转KML 这段时间全省各地都在开展耕地流出图斑整改恢复工作,期间或多或少都需要村委会协助摸排举证,除了举证软件外,奥维、外业精灵等软件想必大家接触得也很多。这就经常需要我们转kmz文件给业主或者摸排人员,那么有没有什么方法在arcgis下快速批量转kmz文件呢,今天就介绍一下如何在模型构建器(ModelBuilder)构建批量图层转KML的模型。 阅读详情

相关推荐

MySQL等保三级合规实践:如何安全配置root账户的本地与受信主机登录策略

本文详细介绍了MySQL在等保三级合规框架下如何安全配置root账户的本地与受信主机登录策略。通过分析root账户的特殊保护需求,提供三种安全加固方案,包括限制访问范围、限定登录IP和完全禁止远程登录,并指导创建安全的远程管理账户。文章还涵盖了密码策略强化、日志审计配置和网络层防护等关键合规要求,帮助用户实现MySQL的等保三级全面合规。

weixin_42522964的博客 260

Python学习记录(十四):面向对象编程

​ 面向过程程序设计:核心是过程,先干什么再干什么。如同一条流水线,是一种机械式的思维方式。​ 面向对象程序设计:一切皆为对象,类似于上帝创造世界。对象是特征与动作的结合体,解决了程序的扩展性。

qq_45780762的博客 1980

Ubuntu22.04中通过conda快速部署PyTorch开发环境(CPU/GPU双版本实战)

本文详细介绍了在Ubuntu22.04系统中,如何利用Conda高效部署PyTorch开发环境。文章分别提供了CPU与GPU双版本的实战教程,涵盖环境创建、镜像加速、版本匹配及深度验证等关键步骤,旨在帮助开发者快速搭建稳定、兼容的深度学习环境,从而专注于模型开发。

rose2的博客 556

2025-05-29 学习记录--Python-面向对象

Python-面向对象

weixin_48850734的博客 585

Token算力工厂建设方案:从GPU集群到计量计费的全链路设计

在AI应用从“租核”走向“买Token”的范式转换中,算力交付的核心指标已不再是vCPU或GPU实例,而是单位时间内的Token产出量与单Token成本。这一变化推动基础设施从资源租赁向计件生产演进,要求GPU集群、推理引擎、调度系统、计量计费等模块像工厂产线一样协同运转。本文从硬件异构混部、存储网络设计、推理引擎调优、Token网关与配额管理、稳定性治理等维度,系统拆解如何构建一座可量化、可计费、可扩展的Token算力工厂,并给出分三期落地的推进节奏,帮助架构师与技术管理者在AI基础设施建设中实现成本可控

weixin_29095587的博客 264

OPC DCOM详细配置方法 - 不关防火墙不换登陆用户

1. 前言   OPC DCOM的设置是实现跨网络OPC通信的基础,现有的一些OPC DCOM配置教程虽然讲解了如何配置DCOM,但没有讲清楚为什么要这么做,而且各个教程涉及的配置方法也不尽相同。   为了彻底搞清楚OPC DCOM的配置过程,我重新做了两台机器的系统,一台是Windows 7 32位,一台是Windows 10 64位,并且重零开始完整的测试了正常运行OPC DCOM所需的最少的...

steventian72的博客 3万+

Python学习记录(十五):面向对象进阶

默认的字符串格式化# 0表示是元组的第0个元素,即d1对象本身# 自定义输出日期的格式化# 定义三种不同的格式# format_spec表示格式化的结构# 不输入格式或输入错误都按照默认格式# 不输入格式或输入错误都按照默认格式。

qq_45780762的博客 480

ABAP CDS View 从入门到精通教程第一篇:ABAP CDS View 在 SAP 技术体系中的重要地位

摘要:本文介绍了SAP开发技术专家提供的多套SAP开发教程,涵盖ABAP、UI5、Fiori、OData、BTP等技术领域。重点阐述了ABAP CDS View在SAP S/4HANA中的核心地位,作为虚拟数据模型(VDM)的关键技术,它实现了OLTP和OLAP的统一处理。文章还说明了学习CDS View的前置条件,包括需要SAP NetWeaver 7.50 SP01或更高版本系统,以及使用SAP ABAP Development Tool进行开发实践。作者具有16年SAP开发经验,这些教程形成了完整的S

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 899

python学习记录3-python的面向对象

面相对象基础语法 目标 dir内置函数 定义简单的类(只包含方法) 方法中的self参数 初始化方法 内置方法和属性 01.dir内置函数(知道) 在Python中对象几乎是无所不在的,我们之前学习的变量、数据、函数都是对象 在Python中可以使用以下两个方法验证: 在标识符/数据后输入一个.,然后按下TAB键,iPython会提示该对象能...

Welcome 239

STM32实战开发(76):STM32开发无线传感器网络(WSN)完整实现

本文介绍了如何基于STM32开发无线传感器网络,包括硬件选择、通信协议、系统设计和编程实现。通过STM32的强大性能和低功耗特性,我们能够构建高效、可靠的无线传感器网络。无论是Zigbee、LoRa、Wi-Fi还是BLE协议,STM32都能够与多种通信模块进行兼容,满足不同应用的需求。希望这篇文章能帮助您了解无线传感器网络的构建流程,并为您的项目提供有价值的参考。

2201_76125393的博客 1059

基于Python的电商平台商品价格监控与历史价格查询系统

随着电子商务的快速发展,消费者对商品价格透明度的需求日益增长。本文设计并实现了一个基于Python的电商平台商品价格监控与历史价格查询系统,能够自动抓取京东和淘宝商品信息,存储历史价格数据,并通过可视化界面展示价格走势。系统采用最新的异步爬虫技术、反爬虫绕过策略和现代Web框架,实现了高效稳定的数据采集与展示功能。关键词:Python爬虫、价格监控、历史价格、数据可视化、异步爬虫、电商平台实现了京东和淘宝商品信息的异步爬取,采用多种反爬虫策略提高爬取成功率;

2201_76125261的博客 682

Python学习记录3——面向对象

目录 零之前言 一.类及其成员定义 1.类定义 2.类对象 二.类操作 1.类方法: ①自定义 ②特殊 2.继承 ①单继承 ②多继承 ③解决途径 3.方法重写 4.运算符重载 零之前言 先说,本教程需要对象……没有对象的话,自己建一个。我是通过C++学习过面向对象方面的知识的,所以,我只作面向对象在Python中的应用,而对于面向对象的理解,需要看其他的东西。菜鸟教...

康娜喵的原创博客 284

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

python面向对象设计学习记录

aisi0308的博客 211

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

学习Python记录---面向对象

转载的,方便自己查看,如需修改请联系我,谢谢! 转载地址如下 http://www.cnblogs.com/wupeiqi/p/4493506.html 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学者接受,其往往用一长段...

zzr999zzr的专栏 173

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

【Python学习记录】面向对象——类

面向对象语言的特征: 类(Class):用来描述具有相同属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。 实例化:创建一个类的实例。 数据成员:类变量或者实例变量, 用于处理类及其实例对象的相关数据。 方法:类中定义的函数。 对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。对象是类的实例。 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。 实例变量:在类的声明(实例化)中,属性是用变.

有准备的人 318

Python学习记录 面向对象编程

Python学习记录 面向对象编程

Code_peasant的博客 223

Python学习记录之面向对象设计

Python面向对象设计 类的定义: 成员变量:用变量的形式表示对象属性。 成员方法:用函数形式表示对象行为。 class 类名: 属性 … 属性 方法 对象的创建: 对象名 = 类名() 方法调用:对象名.方法() 构造函数 一般用于完成对象数据成员设置处置或进行其他必要的初始化工作。 def init(self,a,b): self.a=a self.b=b 析构函数 用来释放对象资源。 ...

weixin_41387192的博客 156

学习记录_Python面向对象

学习记录 日期:2021年9月4日 学习内容python中类成员的继承和重写python中的object类python重写__str__方法python中类的多重继承python中的mro()方法python中_super获得父类的定义python中的多态 python中类成员的继承和重写 #测试 class Person: def __init__(self,name,age): self.name = name self.__age = age #私有属性

weixin_44578760的博客 130

python学习自记录(13)面向对象

1.面向对象技术简介 1)类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 2)类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。 3)数据成员:类变量或者实例变量, 用于处理类及其实例对象的相关的数据。 4)方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进...

my_Freespace的博客 261

Python学习记录day7-面向对象

Python学习记录day7 1. 面向过程 VS 面向对象 编程范式 2. 面向对象特性 3. 类的定义、构造函数和公有属性 4. 类的析构函数 5. 类的继承 6. 经典类vs新式类 7. 多态

ygqygq2的IT博客 1141

学习记录_python面向对象

学习记录 日期:2021年9月6日 学习内容特殊方法和运算符的重载特殊属性对象的浅拷贝和深拷贝组合组合2工厂模式单例模式单例模式和工厂模式整和 特殊方法和运算符的重载 class Person: def __init__(self,name): self.name = name def __add__(self, other): if isinstance(other,Person): return '{0}-{1}'.format(s

weixin_44578760的博客 157

Python学习记录——10.面向对象编程

文章目录1.面向对象前导2.类的创建3.类的继承4. 类属性与方法 1.面向对象前导 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。 接下来先来简单的了解下面向对象的一些基本特征。 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 **类变量:**类变量在整个实例...

赈川 235

8 Python学习记录- 面向对象

Python面向对象

LoveG_G的博客 300

Python学习整理记录之OPP面向对象(类)

OOP-Python面向对象 Python的面向对象 面向对象编程 基础 -公有私有 继承 组合,Minxi 魔法函数 魔法函数概述 构造类魔法函数 运算类魔法函数 1 面向对象概述(Object Oriented,OO) OOP思想 接触到任意一个任务,首先想到的是任务这个世界的构成,是由模型构成的 几个名词 OO —面向对象 OOA—面向对象的分析 OOD—面向对象的设计 OOI—面向对象的实现 OOP—面向对象的编程 OOA-》OOD-》OOI—面向对象的实现过程 类和对

zhuoyizhuoai的博客 498

python面向对象程序编程学习记录

1. case_1:简单的类,类方法创建 class Cat: def __init__(self, new_name): self.name=new_name print("%s 来了" % self.name) def __del__(self): print("%s 去了" % self.name)

xdzhangzhenhao的博客 902

python学习记录6(面向对象)

类与对象 类 对一群具有相同特征或者行为的事物的一个统称,是抽象的,不能直接使用 对象 由类创建出来的一个具体存在 类的设计示例 设计一个类,实例化两个对象,然后小明跑步,跑完步会去吃东西,小美不跑步,小美喜欢吃东西 小明 今年 18 岁,身高 1.75,每天早上跑完步,会去吃东西 小美 今年 17 岁,身高 1.65,小美不跑步,小美喜欢吃东西 class Person(): def __init__(self,name,age,height): self.name ..

叶柖的博客 529
上一篇: Python学习记录 私有属性和私有方法
下一篇: Python学习记录 重写__str__()方法
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值