1. 首页
  2. Python

赶紧入手,python面试题之Python如何实现单例模式?

“u003Cdivu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002Fdfic-imagehandleru002Fd376ac31-05c6-4643-b872-223d6c652b9d” img_width=”1200″ img_height=”801″ alt=”赶紧入手,python面试题之Python如何实现单例模式?” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E你现在在找工作吗?还是在观望中呢?快过年了,很多人都会想先存点钱,把年过好再说吧。为了春节,我们加油!哈哈。u003Cu002Fpu003Eu003Cpu003E回到找工作的话题,遇到心仪的公司了,不可否定的是:最后还是得过了面试那一关。所以,面试前把准备做足了,这样才能增加面试成功的几率。u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002F2518541fad4d48f2a719a95b2457845b” img_width=”700″ img_height=”438″ alt=”赶紧入手,python面试题之Python如何实现单例模式?” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003Eu003Cstrongu003E废话不多说,python面试题之Python如何实现单例模式,直接给大家送上干货:u003Cu002Fstrongu003Eu003Cu002Fpu003Eu003Cpreu003E#使用__metaclass__(元类)的高级python用法 u003Cbru003Eclass Singleton2(type): u003Cbru003E def __init__(cls, name, bases, dict): u003Cbru003E super(Singleton2, cls).__init__(name, bases, dict) u003Cbru003E cls._instance = None u003Cbru003E def __call__(cls, *args, **kw): u003Cbru003E if cls._instance is None: u003Cbru003E cls._instance = super(Singleton2, cls).__call__(*args, **kw) u003Cbru003E return cls._instance u003Cbru003E u003Cbru003Eclass MyClass3(object): u003Cbru003E __metaclass__ = Singleton2 u003Cbru003E u003Cbru003Eone = MyClass3() u003Cbru003Etwo = MyClass3() u003Cbru003E u003Cbru003Etwo.a = 3 u003Cbru003Eprint one.a u003Cbru003E#3 u003Cbru003Eprint id(one) u003Cbru003E#31495472 u003Cbru003Eprint id(two) u003Cbru003E#31495472 u003Cbru003Eprint one == two u003Cbru003E#True u003Cbru003Eprint one is twou003Cbru003Et#Trueu003Cbru003Etu003Cbru003Et#使用装饰器(decorator), u003Cbru003E#这是一种更pythonic,更elegant的方法, u003Cbru003E#单例类本身根本不知道自己是单例的,因为他本身(自己的代码)并不是单例的 u003Cbru003Edef singleton(cls, *args, **kw): u003Cbru003E instances = {} u003Cbru003E def _singleton(): u003Cbru003E if cls not in instances: u003Cbru003E instances[cls] = cls(*args, **kw) u003Cbru003E return instances[cls] u003Cbru003E return _singleton u003Cbru003E u003Cbru003E@singleton u003Cbru003Eclass MyClass4(object): u003Cbru003E a = 1 u003Cbru003E def __init__(self, x=0): u003Cbru003E self.x = x u003Cbru003E u003Cbru003Eone = MyClass4() u003Cbru003Etwo = MyClass4() u003Cbru003E u003Cbru003Etwo.a = 3 u003Cbru003Eprint one.a u003Cbru003E#3 u003Cbru003Eprint id(one) u003Cbru003E#29660784 u003Cbru003Eprint id(two) u003Cbru003E#29660784 u003Cbru003Eprint one == two u003Cbru003E#True u003Cbru003Eprint one is two u003Cbru003E#True u003Cbru003Eone.x = 1 u003Cbru003Eprint one.x u003Cbru003E#1 u003Cbru003Eprint two.x u003Cbru003E#1u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E赶紧收藏起来吧~u003Cu002Fpu003Eu003Cpu003E最后多说一句,小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002Fdfic-imagehandleru002Fabd3c282-2e7e-4213-9af9-d3b383956361″ img_width=”1200″ img_height=”800″ alt=”赶紧入手,python面试题之Python如何实现单例模式?” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cu002Fdivu003E”

原文始发于:赶紧入手,python面试题之Python如何实现单例模式?

主题测试文章,只做测试使用。发布者:逗乐男神i,转转请注明出处:http://www.cxybcw.com/12858.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code