Python如何实现文件操作帮助类
时间:2023-05-05 23:46
在使用Python进行业务开发的时候,需要将一些数据保存到本地文件存储,方便后面进行数据分析展示。 通过查看需求可得出:需要将数据存储为本地文件(这就是涉及到文件的操作),文件操作属于基础内容,可以直接将常用的文件操作封装为一个文件,后面使用直接调用即可。 以上就是Python如何实现文件操作帮助类的详细内容,更多请关注Gxl网其它相关文章!一、业务需求
二、需求分析
三、实现方法
3.1、Python文件帮助类
#文件操作 import pickle #读取文件的所有内容(返回字符串)def ReadFileAllInfoAsStr(filePathAndName): try: with open(filePathAndName) as fileObj: fileInfos=fileObj.read() except FileNotFoundError: msg="很抱歉,文件【"+filePathAndName+"】不存在" print(msg) else: return fileInfos #读取文件的所有内容(返回列表)def ReadFileAllInfoAsList(filePathAndName): try: with open(filePathAndName) as fileObj: fileInfos=fileObj.readlines() except FileNotFoundError: msg="很抱歉,文件【"+filePathAndName+"】不存在" print(msg) else: return fileInfos #写入信息到文件(覆盖原有内容)def WriteInfo(needWriteInfo,filePathAndName): try: with open(filePathAndName,'wb') as fileObj: tmpBytes = bytes(needWriteInfo,'utf8') fileObj.write(tmpBytes) except Exception as e: print(e) #追加信息到文件中def AppedInfo(needWriteInfo,filePathAndName): try: with open(filePathAndName,'ab') as fileObj: tmpBytes = bytes('
'+needWriteInfo,'utf8') fileObj.write(tmpBytes) except Exception as e: print(e) #写入对象到文件def WriteObj(needWriteInfo,filePathAndName): try: with open(filePathAndName,'wb') as fileObj: pickle.dump(needWriteInfo,fileObj) except Exception as e: print(e) #读取文件内容def ReadObj(filePathAndName): try: with open(filePathAndName,'rb') as fileObj: tmpObj = pickle.load(fileObj) except Exception as e: print(e) else: return tmpObj import jsonimport codecs #写入信息为json文件def WritInfoAsJson(needWriteInfo,filePathAndName): try: with codecs.open(filePathAndName,'wb',encoding='utf-8') as fileObj: json.dump(needWriteInfo,fileObj) except Exception as e: print(e) #读取json文件信息def ReadInfoToJson(filePathAndName): try: with codecs.open(filePathAndName,'rb',encoding='utf-8') as fileObj: tmpJson=json.load(fileObj) except Exception as e: print(e) else: return tmpJson
3.2、Python文件帮助类的使用示例
import FileOPC print('
写入信息到文件中')filePathAndName2='file/test.txt'tmpstr="测试写入内容abcdefg"FileOPC.WriteInfo(tmpstr,filePathAndName2) print('
将字符串转为字节1')tmpbytes1=str.encode('测试写入内容','utf-8')print(tmpbytes1)print('
将字符串转为字节2')tmpbytes2=bytes('测试写入内容','utf-8')print(tmpbytes2) print('
追加信息到文件中')FileOPC.AppedInfo('追加信息123',filePathAndName2)FileOPC.AppedInfo('测试追加信息456',filePathAndName2) print('
切分字符串')splitStr="Alice in wonderlan 切割字符串,1,2,3,45,6"tmpSplit = splitStr.split(',')print(tmpSplit) print('
写入对象信息到文件')filePathAndName3='file/test2.txt'FileOPC.WriteObj('测试写入对象信息112254799abcadshofdsaujfoduasfoj',filePathAndName3) print('
读取文件对象')tmpObj = FileOPC.ReadObj(filePathAndName3)print(tmpObj) import jsonprint('
写入信息保存为Json文件')filePathAndName4='file/testJson.json'jsonDatas={"101001":[1,3,5,7,9],"101009":["张三","李四",'王五']}#jsonDatas=[2,3,5,7,11,13] FileOPC.WritInfoAsJson(jsonDatas,filePathAndName4) print('
读取Json文件信息')tmpJson=FileOPC.ReadInfoToJson(filePathAndName4)print(tmpJson)
3.3、示例执行结果