Python的类和对象

对象=属性(特征)+方法(行为)

类:在python中,把具有相同属性和方法的对象归为一个类(class)

self:

init()构造方法,只要实例化一个对象,这个方法就会在对象被创建时自动调用。

公有和私有

变量名“隐藏

这只是伪私有,其实所有的类都是可以被外部调用的。

继承

需要注意,如果子类中定义与父类同名的方法或者属性,则会自动把父类覆盖掉。

继承的另一个例子

下面试试科比:

kobe没有x属性,因为在Kobe类中,重写了魔法方法init_(),但是没有初始化科比的x坐标和y坐标,因此调用move()会出错。解决方法:在kobe类中重写__init()方法的时候先调用基类Ball()的init方法。

kobe也可以成功运行:

这里需要注意的是,这个self并不是父类Ball的实例对象,而是子类Kobe的实例对象,所以说未绑定指并不需要绑定父类的实例对象,使用子类的实例对象代替即可。

不理解也没关系,因为,super函数可以代替它

super

运行之后得到:

super函数的神奇之处在于,你不需要给出任何基类的具体名字,它会自动找到所有基类以及对应的方法。

多重继承

组合

把不同的类直接放进去实例化,就叫组合:

运行 组合.py得到:

类、类对象和实例对象

实例对象会把类对象进行赋值覆盖。

本文来自企鹅号 - 我的朋友王彦祖媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏编程派的专栏

提升 Python 编程效率的十点建议

程序员的时间很宝贵,Python这门语言虽然足够简单、优雅,但并不是说你使用Python编程,效率就一定会高。要想节省时间、提高效率,还是需要注意很多地方的。 ...

1.2K00
来自专栏社区的朋友们

爬虫实战:爬虫之 web 自动化终极杀手 ( 上)

最近写了好几个简单的爬虫,踩了好几个深坑,在这里总结一下,给大家在编写爬虫时候能给点思路。本次爬虫内容有:静态页面的爬取。动态页面的爬取。web 自动化终极爬虫...

2K10
来自专栏梅海峰的专栏

利用 JSON-Schema 对 Json 数据进行校验( Python 示例)

本文尝试通过 json 数据校验方法解决如下几个问题:数据没有校验,系统处于裸奔状态,导致后期维护成本高;编写一堆校验代码,混杂在业务代码中,导致代码可读性降低...

6.6K20
来自专栏胖胖的专栏

实战干货:从零快速搭建自己的爬虫系统

本文简要归纳了网页爬虫的基础知识,着重于利用现有组件,快速建立一套实际可用的网页爬取、分析系统。系统主要使用Python 作为开发语言,在 Linux 或 Ma...

4.5K40
来自专栏不知的专栏

反-反爬虫:用几行代码写出和人类一样的动态爬虫

本文将从 Phantomjs 动态爬虫介绍起,用3行代码傻瓜式完成基于 Casper 的动态爬虫来绕过对抗策略获取页面数据。

1.4K20
来自专栏云加头条

腾讯云的 Python 实践

出于对 Python 在云计算方面的信心,李力从 2012 年开始在腾讯云推广使用 Python。

1.1K00
来自专栏遊俠扎彪

如何在命令行中处理CSV文件

CSV,全称Comma-Separated Values。CSV文件是每一行都是以逗号分隔的纯文本文件。

40300
来自专栏张耀琦的专栏

数据科学工具 Jupyter Notebook教程 in Python

本文主要内容为:如何安装,运行和使用 IPython 进行交互式 matplotlib 绘图,数据分析,还有发布代码。

2K20
来自专栏张戈的专栏

Python 远程控制模块 paramiko 问题解决记录

生产环境中使用paramiko作SSH远程控制时,发现会有部分机器报Error reading SSH protocol banner错误,尝试使用ssh命令连...

6.7K20
来自专栏唐郑望的专栏

Django数据处理的一些实践

提到 Django 肯定避不开 MVC 模式,即模型(Model)-视图(View)-控制器(Controller),通过将业务逻辑、数据、界面显示分离的方法组...

38110

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励