python进阶之魔术方法详解

 更新时间:2022年01月15日 14:13:12   作者:骄阳根据地  
这篇文章主要为大家介绍了python进阶之魔术方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

一、三个内置函数

1、@classmethod–类名.属性名

2、@staticmethod–类名.属性名

3、@property–设置只读属性,方法变属性,别人不易篡改,调用:类名(). 属性名

二、双下划线开头和结尾的方法,叫魔术方法。

1、一个类对象,在__init__初始化之前,还有__new__方法,这里要重写__new__方法,要调用父类的new方法,且将new方法创建的对象返回,即object. new(cls),其中cls代表的是类对象本身(MyClass)。否则无返回值运行报错。

在这里插入图片描述

2、单例模式

这个__new__方法的应用之一,就是单例模式。

实现思路,蓝色线一个回路。黄色线一个回路。

在这里插入图片描述

具体脚本如下。t2实例对象,没有name属性,但是也神奇的输出与t1一致的结果。如此类推,其他也一样,如果把这个. py文件导入其他文件B. py中,在B. py中创建其他实例对象t3,调用这个name属性时就会输出与t1一样的结果。其次,t1、t2、t3的内存地址即id(t1)三个都是一样的。最后,还可以设置其他属性,且之间属性共用。

这个就是单例模式,即实例化一次。(如果多次实例化,设置属性,明显会浪费资源,所以单例模式诞生了。)

在这里插入图片描述

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • 使用Jest 在 Visual Studio Code 中进行单元测试的流程分析

    使用Jest 在 Visual Studio Code 中进行单元测试的流程分析

    Jest是一个流行的JavaScript测试框架,它提供了简洁、灵活和强大的工具来编写和运行单元测试,今天通过本文给大家介绍使用Jest在Visual Studio Code中进行单元测试的流程分析,感兴趣的朋友跟随小编一起看看吧
    2023-07-07
  • python网络爬虫实战

    python网络爬虫实战

    实践来源于理论,做爬虫前肯定要先了解相关的规则和原理,网络爬虫又称为网页蜘蛛,网络机器人,更经常的称为网页追逐者,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。一句话概括就是网上信息搬运工。本篇文章带你深入了解,需要的朋友可以参考下
    2021-09-09
  • Python垃圾回收及Linux Fork

    Python垃圾回收及Linux Fork

    这篇文章主要介绍了Python垃圾回收及Linux Forkm,Python垃圾回收主要以引用计数为主,分代回收为辅,而一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间,下面来看文章具体介绍吧
    2022-01-01
  • 使用python编写一个视觉巡线程序

    使用python编写一个视觉巡线程序

    这篇文章主要为大家详细介绍了如何使用python编写一个视觉巡线程序,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-01-01
  • 详解python如何调用C/C++底层库与互相传值

    详解python如何调用C/C++底层库与互相传值

    Python作为一门脚本解释语言,本身又很好的结合C++,所以使用Python开发,在性能要求的地方调用C/C++底层库,这简直是神器。本文详细介绍了Python调用C/C++底层库,互相传值问题,下面一起来看看。
    2016-08-08
  • python去除字符串中空格的6种常用方法

    python去除字符串中空格的6种常用方法

    最近业务需要对Pyhon中的一些字符串内容去除空格,方便后续处理,下面这篇文章主要给大家介绍了关于python去除字符串中空格的6种常用方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • 不到20行实现Python代码即可制作精美证件照

    不到20行实现Python代码即可制作精美证件照

    这篇文章主要介绍了不到20行实现Python代码即可制作精美证件照,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Python搜索引擎实现原理和方法

    Python搜索引擎实现原理和方法

    这篇文章主要介绍了Python搜索引擎实现原理和方法,并对大数据分析做了详细解释,喜欢的朋友参考一下。
    2017-11-11
  • 简单介绍Python中利用生成器实现的并发编程

    简单介绍Python中利用生成器实现的并发编程

    这篇文章主要介绍了简单介绍Python中利用生成器实现的并发编程,使用yield生成器函数进行多进程编程是Python学习进阶当中的重要知识,需要的朋友可以参考下
    2015-05-05
  • python 中的列表生成式、生成器表达式、模块导入

    python 中的列表生成式、生成器表达式、模块导入

    这篇文章主要介绍了python中的列表生成式、生成器表达式、模块导入 ,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06

最新评论