资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

Python单利模式,简单工厂实现,import自定义模块-创新互联

import mypackage.ZString as zs
'''
单利模式
'''

成都创新互联公司专注于北流企业网站建设,响应式网站开发,商城网站建设。北流网站建设公司,为北流等地区提供建站服务。全流程定制网站,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务

class User(object):
__instance = None

def __init__(self, name, age):
    self.name = name
    self.age = age
    print('name=%s,age=%s' % (self.name, self.age))

def __new__(cls, name, age):
    if not cls.__instance:
        cls.__instance = object.__new__(cls)
    return cls.__instance

u1 = User('tom', 18)
u2 = User('jack', 28)

print(u1 == u2)
print(id(u1))
print(id(u2))

'''
工厂模式
'''

class Person(object):
def init(self, name):
self.name = name

def work(self, axe_type):
    print('%s开始工作了' % self.name)
    # axe=StoneAxe('花岗岩')
    # axe=SteelAxe('加爵')
    axe = Factory.get_axe(axe_type)
    if not axe == None:
        axe.cut_tree()

class Axe(object):
def init(self, name):
self.name = name

def cut_tree(self):
    print('%s进行砍树了' % self.name)

class StoneAxe(Axe):
def cut_tree(self):
super().cut_tree() # 子类调用父类方法
print('使用石头做的斧头砍树')

class SteelAxe(Axe):

def cut_tree(self):
    super().cut_tree()  # 子类调用父类方法
    print('使用钢铁做的斧头砍树')

class Factory(object):

静态简单工厂方法

@staticmethod
def get_axe(axe_type):
    if axe_type == "stone":
        return StoneAxe('花岗岩')
    elif axe_type == "steel":
        return SteelAxe('加爵')
    else:
        print('你输入错误吧')

p = Person('张三')
p.work('steel')

def get_str():
s=None
print(zs.isnull(s))

get_str()

字符串为None时为True,为空时也True,否则为False

def isnull(str):
if not str:
return True
elif str.strip() == '':
return True
else:
return False

if name == 'main':
t=None
print(isnull(t))

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站栏目:Python单利模式,简单工厂实现,import自定义模块-创新互联
文章分享:http://cdkjz.cn/article/dhsghi.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220