Python面向对象编程之“类和实例”

简介: 引入作为面向对象的语言,python自然具有“对象”的概念,并且还非常重要。在面向对象中,“类和实例”这两个的概念是非常重要的。熟练运用好类以及实例,会让python工程师事半功倍。

引入


作为面向对象的语言,python自然具有“对象”的概念,并且还非常重要。

在面向对象中,“类和实例”这两个的概念是非常重要的。熟练运用好类以及实例,会让python工程师事半功倍。


1.类


类就是一个模板,一个可以复用的工具。我们可以通过class来定义一个类:

class Test(object):
    <函数块>

class的后面跟着的是你给类取的名字.这个名字的命名在官方文档中没有特殊规定.但是建议按照变量命名规则来,以避免出现问题.且该名字往往是大写字母开头的

**紧跟在后面的(object)表示的是该类是从哪个类那里继承下来的. **这意味着,往往一个类不是凭空出现的,他会从某一个父类(也就是该子类继承的类)那里获得父类的一些特质.如果该类作为父类让别的类继承了他,那么原父类也会被继承.

举个例子:A是B的父类,B是C的父类,那么其实A也是被C继承的类.这个是继承的传递性

如果没有合适的类来继承,我们可以就用object类来填充这里的空.因为这是所有类的最初来源,根据类的传递性,不难理解,最终所有类都是会继承到object的


2.实例


前面提到的实例就是在类下面创建的。用同一个例子来解释,上面的Test类定义好了之后,我们就可以根据这个Test类去创建实例了。

创建实例的语法是“类名”+“()”实现的

>>> bart = Test()
>>> bart#这里我们调用bart输出看看
<__main__.Test object at 0x10a67a590> #这里表示bart指向了Test的一个实例,0x10a67a590是内存地址。
>>> Test #我们再调用Test看看
<class '__main__.Test'> #Test本身作为了一个类


3.实例变量属性绑定


绑定属性就是给一个实例的变量赋值,比如:

>>> bart.name = '123'#给bart的name赋值123
>>> bart.name#输出看看
'123'

一般我们在创建实例的时候就可以把我们必须绑定的属性强势书写进去。

一般我们采用__init__方法实行该绑定

class Test(object):
    def __init__(self, name, salary):
        self.name = name
        self.salary = salary

__init__方法的第一个参数永远是self,它代表创建的实例本身,各个参数绑定的是self就代表最终他们指向的都是该实例本身


相关文章
|
3月前
|
缓存 供应链 芯片
电子元件类商品 item_get - 商品详情接口深度分析及 Python 实现
电子元件商品接口需精准返回型号参数、规格属性、认证及库存等专业数据,支持供应链管理与采购决策。本文详解其接口特性、数据结构与Python实现方案。
|
7月前
|
算法 Python
Apriori算法的Python实例演示
经过运行,你会看到一些集合出现,每个集合的支持度也会给出。这些集合就是你想要的,经常一起被购买的商品组合。不要忘记,`min_support`参数将决定频繁项集的数量和大小,你可以根据自己的需要进行更改。
307 18
|
8月前
|
人工智能 Python
[oeasy]python083_类_对象_成员方法_method_函数_function_isinstance
本文介绍了Python中类、对象、成员方法及函数的概念。通过超市商品分类的例子,形象地解释了“类型”的概念,如整型(int)和字符串(str)是两种不同的数据类型。整型对象支持数字求和,字符串对象支持拼接。使用`isinstance`函数可以判断对象是否属于特定类型,例如判断变量是否为整型。此外,还探讨了面向对象编程(OOP)与面向过程编程的区别,并简要介绍了`type`和`help`函数的用法。最后总结指出,不同类型的对象有不同的运算和方法,如字符串有`find`和`index`方法,而整型没有。更多内容可参考文末提供的蓝桥、GitHub和Gitee链接。
224 11
|
11月前
|
测试技术 Python
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
572 31
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
|
11月前
|
前端开发 搜索推荐 编译器
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
629 34
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
|
9月前
|
存储 C语言 Python
[oeasy]python077_int类型怎么用_整数运算_integer_进制转化_int类
本文主要讲解了Python中`int`类型的应用与特性。首先回顾了`int`词根的溯源,探讨了整型变量的概念及命名规则(如匈牙利命名法)。接着分析了整型变量在内存中的存储位置和地址,并通过`type()`和`id()`函数验证其类型和地址。还介绍了整型变量的运算功能,以及如何通过`int()`函数将字符串转化为整数,支持不同进制间的转换(如二进制转十进制)。此外,文章提及了关键字`del`的使用场景,对比了Python与C语言中`int`的区别,并总结了整型与字符串类型的差异,为后续深入学习奠定基础。
226 1
|
11月前
|
人工智能 编译器 Python
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
270 0
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
|
12月前
|
数据采集 存储 XML
python实战——使用代理IP批量获取手机类电商数据
本文介绍了如何使用代理IP批量获取华为荣耀Magic7 Pro手机在电商网站的商品数据,包括名称、价格、销量和用户评价等。通过Python实现自动化采集,并存储到本地文件中。使用青果网络的代理IP服务,可以提高数据采集的安全性和效率,确保数据的多样性和准确性。文中详细描述了准备工作、API鉴权、代理授权及获取接口的过程,并提供了代码示例,帮助读者快速上手。手机数据来源为京东(item.jd.com),代理IP资源来自青果网络(qg.net)。
|
3月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
319 102
|
3月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
345 104

推荐镜像

更多