python面向对象封装自己的库--Apple的学习笔记

一,前言

今天看电视看到一句话,站在巨人的肩膀上加快了开发速度。突然我想到我写python小工具的时候,基本也进入了复制黏贴修改的状态。为什么呢!因为应用都是差不多的,基本就是读取文件,添加逻辑处理,输出这样的设计,而读取文件基本都是文本文件和hex文件为主。

二,需求

基于如上应用,我想到了一个优化需求,目的是为了加速我将来的开发,也就是将这些我自己开发的常用的代码再封装为库,代码设计为面向对象的方式(封装,继承,多态),便于将来开发,针对不同的应用,只要重写一部分逻辑即可。

三,小试牛刀

import sys
import os
sys.path.append("..\src")
#sys.path.append(os.path.abspath(os.path.join(os.getcwd(),"..")) + "\\src")
from APPLE_LIB import rf


class myreadTXT(rf.readTXT):
    def __init__(self, filePath, fileName):
        # shall add these, otherwise can't add new data
        rf.readTXT.__init__(self, filePath, fileName)  
        self.list =[]

    # write for different application
    def dosomething(self,str):
        self.list.append(str)

    # write for different application
    def readend(self):
        print(self.list)


if __name__ == '__main__':
    # create object
    testTXT = rf.readTXT("","3.csv")
    # read file of this object
    rf.run.read(testTXT)

    testHEX = rf.readHEX("","4.hex")
    rf.run.read(testHEX)

    # create my object
    testmyreadTXT = myreadTXT("","3.csv")
    # read file of this object
    rf.run.read(testmyreadTXT)

输出结果

1
2
3
3

['1', '2', '3', '3']

四,小结

就等着将来有机会来使用我自己做的APPLE_LIB库了,然后不断优化。巨人的代码库就是这样积累优化出来的,哈哈~

你可能感兴趣的:(python面向对象封装自己的库--Apple的学习笔记)