面向对象的一些概念剖析。
面向对象的一些概念剖析。
Python的高级特性1-7系列是本人从Python2过渡3时写下的一些个人见解(不敢说一定对),接下来的系列主要会以类级为主。 类,对象,实例,方法是几个面向对象的几个基本概念,其实很多人并不是真正了解这一块。 举个例子进行测试一下: …
2025-03-24
很多Pythoner会有这样的误解,认为 __init__() 方法是类的构造方法。 因为从表面上看 它确实很像构造方法:当需要实例化一个对象的时候, 使用 a=Class(args...) 便可以返回一个类的实例,其中 args 的参数…
2023-12-27
self 想必大家都不陌生,在类中当定义实例方法的时候需要将第一个参数显式声明为 self ,而调用的时候并不需要传入该参数。 可以使用 self.x 来访问实例变量,也可以在类中使用 self.m() 来访问实例方法。 self 的使用…
2023-12-27
跟其他编程语言一样,Python也支持多继承。多继承的语法非常简单。 class DerivecLClassName (Base1, Base2 , Base3) 谈到多继承,下面来讨论一下图6-3所示的菱形继承的经典问题。 假设有…
2025-03-12
__getattr__()和__getattribute__()都可以用做实例属性的获取和拦截 (注意,仅对实例属性(instance variable)有效,非类属性),__getattr__()适用于米定义的属性, 即该属性在实例中以…
2023-12-27
函数 str() 和 repr() 都可以将Python中的对象转换为字符串,它们的使用以及输出都非常相似, 以至于很多人认为这两者之间并没有区别,但事实是不是这样呢? 先来看对于不同 类型的输入,这两个函数的输出有何异同,如表所示。 r…
2023-12-27
Python中的静态方法(staticmethod)和类方法(classmethod)都依赖于装饰器 (decorator)来实现。 其中静态方法的用法如下: 而类方法的用法如下: 静态方法和类方法都可以通过 类名.方法名 (如 C.f(…
2024-01-20
除了在不同的局部变量、全局变量中查找名字,还有一个相似的场景不可不察,那就是査找对象的属性。 在Python中,一切皆是对象,所以类也是对象,类的实例也是对象。 每一个类都有一个__dict__属性,其中包含的是它的所有属性,又称为类属性…
2023-12-27
property 是用来实现属性可管理性的 built-in 数据类型(注意:很多地方将 property 称为函数, 我个人认为这是不恰当的,它实际上是一种实现了 __get__() 、 __set__() 方法的类, 用户也可以根据A…
2025-01-30
什么是元类(metaclass) ?也许对下面这些说法都不陌生: 元类是关于类的类,是类的模板。 元类是用来控制如何创建类的.正如类是创建对象的模板一样。 元类的实例为类,正如类的实例为对象。 这些说法都没有错,在概念之外进行一些更深…
2025-01-30
因为Python是一门动态语言.Duck Typing的概念遍布其中,所以其中的Concept并不以类型的约束为载体, 而另外使用称为协议的概念。所谓协议,就是在Python中就是需要谰用某个方法, 正好就有这个方法。比如在字符串格式化中…
2025-03-12
通常来说Python并不需要用户自己来管理内存,它与Perl、Ruby等很多动态语言一样 具备垃圾回收功能, 可以自动管理内存的分配与回收,而不需要编程人员的介入。那么这样 是不是意味着用户可以高枕无忧了呢? 看一下下面的例子: whil…
2025-03-12
为了方便学习Python语言,基于Jupyter技术栈搭建了在线计算环境。 用户使用时以网页形式打开,对照书中内容进行学习,在线编写代码和运行代码,代码的运行结果也会直接显示。如在编程过程中需要编写说明文档,可在同一个页面直接编写,便于作及时的说明和解释。
在数据科学、机器学习及深度学习的领域里,Jupyter是一个强大的工具,它集成了代码编写、可视化展示、文档记录等多种功能于一体,让科学计算变得既直观又高效。 随着数据科学和人工智能领域的不断发展,Jupyter 也在不断更新和完善其功能和性 能。 未来可以期待看到更多创新的特性和工具被加入到 Jupyter 中,从而进一步推动科学计算和数据分析的发展。