美文网首页
python单例模式保存excel数据

python单例模式保存excel数据

作者: 暂无牛逼代号 | 来源:发表于2020-04-10 09:03 被阅读0次

数据存在框架中样式

  • 数据在框架中应当用缓存的形式

  • 结束后写入文件,不然频繁写入导致出现问题

    excel 读取数据问题

    import win32com.client
    
    def open_excel(path):
        #载入Excel
        xlApp=win32com.client.Dispatch("Excel.Application")
        '''
        设置是否打开Excel
        True:Excel可见
        Fasle:Excel不可见
        '''
        xlApp.Visible=True
        '''
        设置是否显示警告和消息框
        True:显示
        False:不显示
        '''
        xlApp.DisplayAlerts=False
        #打开Excel
        xlwb=xlApp.Workbooks.Open(Filename=path,UpdateLinks=0,
        ReadOnly=False,Format=None)
        #获取某个Sheet页数据(页数从1开始)
        sheet_data=xlwb.Worksheets(1).UsedRange.Value
        print(sheet_data)
        #获取某个单元格数据 
        '''
        最好设置单元格格式为文本格式,默认格式读取
        全数字时,会在后面带上小数点:
        如单元格中为123,读取出来可能为123.0
        sheet_data[行][列]
        行,列都是从0开始计算
        '''
        data=sheet_data[0][0]
        #保存excel
        xlwb.Save()
        #关闭Excel
        xlwb.Close()
        xlApp.Quit()
        return  sheet_data
    

data 缓存问题

from testSington import Singleton
from testExcel import open_excel


@Singleton
class Sdata(object):
    __eData = []

    @property
    def excelData(self):
        return self.__eData

    @excelData.setter
    def excelData(self, data):
        self.__eData = data


if __name__ == '__main__':
    data = open_excel(r'C:\Users\lotsa\PycharmProjects\pytestDemo\1.xlsx')
    print(type(data))
    sd = Sdata()
    sd.excelData = list(data)
    print(sd.excelData)
    de = Sdata()

    print(de.excelData)

单例实现模式

class Singleton(object):
    _INSTANCE = {}

    def __init__(self, cls):
        self.cls = cls

    def __call__(self, *args, **kwargs):
        instance = self._INSTANCE.get(self.cls, None)
        if not instance:
            instance = self.cls(*args, **kwargs)
            self._INSTANCE[self.cls] = instance
        return instance

    def __getattr__(self, key):
        return getattr(self.cls, key, None)

相关文章

  • python单例模式保存excel数据

    数据存在框架中样式 数据在框架中应当用缓存的形式 结束后写入文件,不然频繁写入导致出现问题excel 读取数据问题...

  • python之理解单例模式

    python之理解单例模式 1、单例模式 单例模式(Singleton Pattern)是一种常见的软件设计模式,...

  • python中OOP的单例

    目录 单例设计模式 __new__ 方法 Python 中的单例 01. 单例设计模式 设计模式设计模式 是 前人...

  • 单例

    目标 单例设计模式 __new__ 方法 Python 中的单例 01. 单例设计模式 设计模式设计模式 是 前人...

  • 2018-06-19 Python中的单例模式的几种实现方式的及

    转载自: Python中的单例模式的几种实现方式的及优化 单例模式 单例模式(Singleton Pattern)...

  • python 单例

    仅用学习参考 目标 单例设计模式 __new__ 方法 Python 中的单例 01. 单例设计模式 设计模式设计...

  • 基础-单例模式

    单例模式总结-Python实现 面试里每次问设计模式,必问单例模式 来自《Python设计模式》(第2版) 1.理...

  • python单例模式

    python单例模式实现方式 使用模板 python模块是天然的单例模式(.pyc文件的存在) 使用__new__...

  • 一套完整Python经典面试题,实力派,做内容不做标题党!

    文末含Python学习资料 1:Python如何实现单例模式? Python有两种方式可以实现单例模式,下面两个例...

  • Python 面向对象7: 单例模式

    一、内容 1.1、单例设计模式 1.2、__new__方法 1.3、Python 中的单例 二、单例设计模式 2....

网友评论

      本文标题:python单例模式保存excel数据

      本文链接:https://www.haomeiwen.com/subject/gkckmhtx.html