|
在日常開發(fā)過程中,經常遇到需要讀取配置文件,這邊就涉及到一個文本讀取的方法。 這篇文章主要以Python讀取文本的基礎方法為本,添加讀取整篇文本返回字符串,讀取鍵值對返回字典,以及讀取各個項返回列表的應用。至于讀取xml文件或者加密文件的其他方法這里不做介紹,后續(xù)會詳細講解。 這里直接上模塊案例,可以看到 此類中含有3個讀取文件的方法,且返回值分別為str,dict,list,分別應用于不同的場景下。其中讀取方式都是一樣的,分享這個類的目的就是為了讓熟手們不用再在代碼中寫啦,直接引用這個包就行啦! 代碼中也融合了一些之前學習的知識點,包括默認參數,冒號與箭頭的含義等~ 1 #!/usr/bin/env python3 2 # -*- coding: utf-8 -*- 3 4 ''' 5 根據不同的讀取文件的目的,返回不同的數據類型 6 可以返回str, dict, list 7 ''' 8 9 10 class FileOperation(object):11 12 def __init__(self, filepath, filename):13 self.files = filepath + filename14 15 16 ''' 將全文本讀取出來返回一個字符串,并包含各種轉行符 '''17 def readFile(self) -> str:18 res = ''19 f = open(self.files, 'r', encoding='utf-8')20 for line in f:21 res += line22 f.close()23 return res24 25 26 ''' 針對鍵值對形式的文本,逐個讀取存入到字典中,返回一個字典類型數據,常用于配置文件中 '''27 def readFile2Dict(self, sp_char = '=') -> dict:28 res = {}29 f = open(self.files, 'r', encoding='utf-8')30 for line in f:31 (k,v) = line.replace('\n', '').replace('\r', '').split(sp_char)32 res[k] = v33 f.close()34 return res35 36 37 ''' 針對需要逐行放入列表中的文本,返回一個列表類型 '''38 def readFile2List(self) -> list:39 res = []40 f = open(self.files, 'r', encoding='utf-8')41 for line in f:42 res.append(line.replace('\n', '').replace('\r', ''))43 f.close()44 return res45 46 47 if __name__ == '__main__' :48 import os49 50 fo = FileOperation(os.getcwd() + '\\temp\\', 'model.html')51 res = fo.readFile()52 print(res)53 54 55 fo = FileOperation(os.getcwd() + '\\temp\\', 'test.txt')56 res = fo.readFile2Dict('|')57 print(res)58 59 60 fo = FileOperation(os.getcwd() + '\\temp\\', 'test.txt')61 res = fo.readFile2List()62 print(res)今天就分享這個簡單的案例,如有其他場景需求,評論或私信我,都會加以改進,分享到這里的,另外特殊文件的讀取和寫入,我會在后期也一并分享,關注我,后期整理不能少! |
|
|