python集合继承单例

集合:#usr/bin/python
#-*-coding:utf-8-*-
# 集合是一个动态数组  元组不可变,列表可变 字典key和value
# python里的集合 set:无序唯一的集合。
# 基本功能:关系测试,消除重复元素。
# union联合  intersection
# set1=set()#这样是创建一个空的集合
# set2={}#这样是创建一个空的字典
# set1={'a':1}#这样是创建一个字典
# set2={'a',1}#这样是创建一个集合
# set3=set({1,2,3})#集合
# set4=({1:2,3:4})#如果大括号里是字典,取key值即1,3 因为key和集合的值都是唯一的
# set5=set([1,3,2,4,1])#输出为{1,2,3,4}有序
# #add(key)  key值不存在就添加,存在就不添加
# # remove(key) 存在则删除,不存在抛异常
# # .pop()随机删除一个正整数中最小的,并返回
# rand=set5.pop()
# print('随机删除了一个:',rand)
# print(set5)
# set5.updte('1245')#将字符串或集合的数据 联合放到set5中
# print(set5)

a={'1','1','2','3','么么'}
b={'1','4','5','么么'}
print(a)
print(b)
#演示联合,出现过一次的全部提取 并返回一个新的集合
c=a|b
print(type(c))
print(c)
#演示交集  重复的提取 两个集合中都有的提取出来放到一个新的集合中
print(a&b)
#演示差 #以前一个为主,去掉重复 剩下第一个中的数据
print(a-b) #以a为主,去掉重复 剩下a中的数据
print(b-a)  #以b为主,去掉重复 剩下b中的数据
#对称差集  不重复的数据  将两个集合中不重复出现的数据输入到一个新的集合中
print(a^b)

继承#usr/bin/python
#-*-coding:utf-8-*-
# 继承:子类可以继承父类,子类可以使用父类的属性和方法,简化代码
# 当生成子类对象时,先初始化父类对象  初始化时...在子类
# class pet:
#     def __init__(self,name,health):
#         self.name='aa'
#         self.health=12
#     def show(self):
#         print('名:'+self.name+'健康:',self.health)
# class dog(pet):
#     def __init__(self,name,health):
#         # 第一种方法 super().__init__(name,health)
#        #第二种方法
#         pet.__init__(self,name,health)
#         self.strain='柴犬'
#     def eat(self):
#         print(self.strain+'吃饭')
# if __name__=='__main__':#代表程序主入口 是从这儿进入的
#     dog=dog('aa',12)
#     dog.eat()
#     dog.show()

class tool:
    def __init__(self,name):
        self.name=name

    def show(self):
        print('名:'+self.name+'正在行驶')
class truck(tool):
    def __init__(self,name,weight):
        super().__init__(name)
        self.weight=weight
    def run(self):
        print('卡车:'+self.name+'载重:'+str(self.weight)+'在行驶')


class train(tool):
    def __init__(self,name,num):
        super().__init__(name)
        self.num=num
    def run(self):
        print('卡车:'+self.name+'车厢个数:'+str(self.num)+'在行驶')

if __name__=='__main__':
    hh=truck('hh',10)
    hh.run()
    aa=train('aa',12)
    aa.run()
单例
#usr/bin/python
#-*-coding:utf-8-*-
#单例模式
class singleton:
    __aa=None#做一个标识
    def __new__(cls, *args, **kwargs):
        if cls.__aa==None:#说明没有被创建过
            cls.__aa=object.__new__(cls)
            return cls.__aa
        else:#被哦创建过
            return cls.__aa#内存地址返给你
    def __init__(self):
        print('__init__')
a1=singleton()
a2=singleton()

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭