Python 文件读取相关操作函数

一、txt文件读取

(1)import codecs 

codecs 模块是专门用来做编码转换的。在python文件读取过程中,编码问题是经常影响新手读取文件的问题,使用该模块可以自动做编码转换。

(2)读取文件

def readfile(path):
    with codecs.open(path,"r",encoding="utf-8") as f:
        lines = f.readlines()
    return "\n".join(lines)

codecs.open()函数,参数1指文件读取路径,它可以是绝对路径也可以是相对路径;参数2指文件打开模式,参数为“r”表示读取;参数3指打开文件的编码方式,一般采用“utf-8”编码

with 语句的引入是为了自动调用close()方法,在文件打开被使用后无论是否出错将正确关闭文件。

f.readlines()函数是指一次性读取按行读取所有内容,返回list 列表

f.readline() 函数是指每次只读取一行内容,返回字符串

f.read() 函数是指一次性读取所有内容,返回字符串

“”.join(list) 函数是将list 列表转换成字符串

总之,读取文件的步骤分为三步:1、open 文件  2、read 文件  3、close 文件

(3)写入文件

def writefile(path,content):
    with codecs.open(path,"a",encoding="utf-8") as f:
        f.write(content)
        print("文件成功读入!")

codecs.open() 函数,参数1指文件存储的地址,它可以是相对路径也可以是绝对路径;参数2指文件写入模式,其可选参数为“w”或是“a”,"w"指直接写入,下次再次写入时会将之前写入的数据覆盖,“a”指在前一次写入的数据基础上添加新的数据,不会覆盖前次写入的数据;参数3指存储文件的编码方式,一般采用“utf-8”编码

f.wirte()函数是指写入函数,其参数类型一般为字符串类型。

总之,写入文件的步骤为三步:1、open 待写入文件 2、write 待写入文件 3、close 文件

二、excel文件读取

(1)import xlrd

xlrd 是Python中专门用来读取微软excel文件的模块

(2)excel 文件读取

def readxls(path):
    excel = xlrd.open_workbook(path)
    sheet = excel.sheets()[0]
    data = []
    #nrows按行读取excel文件,每行数据作为一个list存储进入data这个list中
    for i in range(sheet.nrows):
        data.append(list(sheet.row_values(i)))
    return data

xlrd.open_workbook(path) 函数指打开excel 文件读取数据

xl.sheets()[0] 表示读取第一个工作表,若是需要读取第二个工作表可以将0改为1,之后的工作表读取同理

sheet.col_values(i)  表示读取当前工作表的第i+1列,需要用list 将其强制转换为列表

sheet.row_values(i) 表示读取当前工作表的第i+1 行

nrows = sheet.nrows  表示返回该sheet中的有效行数

ncols  = sheet.ncols   表示返回该sheet中的有效列数

总之,excel 读取的步骤为三步:1、open_workbook 打开excel文件 2、sheets()[n] 读取第n+1 个工作表  3、sheet.col_values(i) 获取取第i+1列的数据

三、文件夹的创建和遍历

(1)import os 

OS是Python处理操作系统相关功能的模块

(2)import shutil 

shutil 是 Python中高级的文件操作模块

(3)文件夹的创建

def build_folder(folderpath):
    if os.path.exists(folderpath):
        shutil.rmtree(folderpath)#若存在则删去已存在的文件夹名
    os.makedirs(folderpath)
    #返回创建的文件夹路径
    return folderpath

os.path.exists()函数指检验给出的路径是否真的存在

shutil.rmtree() 函数指 删除文件夹

os.makedirs() 函数指创建新的文件夹

(4)文件夹的遍历

def fun(folderpath):
    fileArray=[]
    for root,dirs,files in os.walk(folderpath):
        for fn in files:
            eachpath = str(root + "\\" +fn)
            fileArray.append(eachpath)
    return fileArray
os.walk()函数指用于在目录树中游走,输出在目录中的文件名,返回一个三元组turple(root,dirs,files),root指文件夹的根目录,dirs指文件夹名,files指文件夹下的所有文件

猜你喜欢

转载自blog.csdn.net/lalalawxt/article/details/79485395