python 数据分析基础 day5-读写csv文件基础python读写csv文件通过pandas模块读写csv文件通过csv模块读写csv文件

发布时间:2025-12-09 11:43:46 浏览次数:2

今天说一下使用python读写csv文件。 读写csv文件可以使用基础python实现,或者使用csv模块、pandas模块实现。

基础python读写csv文件

读写单个CSV

以下为通过基础python读取CSV文件的代码,请注意,若字段中的值包含有","且该值没有被引号括起来,则无法通过以下的简单代码获取准确的数据。

inputFile="要读取的文件名"outputFile=“写入数据的csv文件名”with open(inputFile,"r")  as fileReader:  with open(outputFile,"w") as fileWriter:    for row in fileReader:      fileWriter.write(row)

读取多个csv文件并写入至一个csv文件

读写文件的代码与读写单个csv文件大致相同,但需要利用glob模块以及os模块获取需要读取的文件名。代码如下:

import osimport globinputPath="读取csv文件的路径"outputFile="写入数据的csv文件名"firstFile=Truefor file in glob.glob(os.path.join(inputPath,"*.csv")):    with open(file,'r') as fileReader:        with open(outputFile,"a") as fileWriter:            if firstFile:                for row in fileReader:                    fileWriter.write(row)                firstFile=False                fileWriter.write("n")            else:                header=fileReader.readline()                for row in fileReader:                    fileWriter.write(row)

通过pandas模块读写csv文件

读写单个CSV

pandas的dataframe类型有相应的方法能读取csv文件,代码如下:

import pandas as pdinputFile="要读取的文件名"outputFile=“写入数据的csv文件名”df=pd.read_csv(inputFile)df.to_csv(outputFile)

请注意,若字段中的值包含有","且该值没有被引号括起来,则无法通过以下的简单代码获取准确的数据。

读取多个csv文件并写入至一个csv文件

import osimport globimport pandas as pdinputPath="读取csv文件的路径"outputFile="写入数据的csv文件名"dataFrameList=[]for file in glob.glob(os.path.join(inputPath,"*.csv")):     df=pd.read_csv(file)    dataFrameList.append(df)allDataFrame=pd.concat(dataFrameList,axis=0,ignore_index=True)allDataFrame.to_csv(outputFile)

通过csv模块读写csv文件

读写单个CSV文件

代码如下:

import csvinputFile="要读取的文件名"outputFile=“写入数据的csv文件名”with open(inputFile,"r",newline='') as fileReader:    with open(outputFile,"w",newline='') as fileWriter:        csvReader=csv.reader(fileReader,delimiter=',')        csvWriter=csv.writer(fileWriter,delimiter=',')        for row in csvReader:            print(row)            csvWriter.writerow(row)

读取多个csv文件并写入至一个csv文件

思路与上述用基础python读取多个csv文件大体相同,代码如下:

import csvimport globimport osinputPath=r"读取csv文件的路径"outputFile=r"输出文件的路径"firstFile=Truefor file in glob.glob(os.path.join(inputFile,"*.csv")):    with open(file,"r") as fileReader:        with open(outputFile,"a") as fileWriter:            csvReader=csv.reader(fileReader)            csvWriter=csv.writer(fileWriter)            if firstFile:                for row in csvReader:                    csvWriter(row)                firstFile=False            else:                header=next(csvReader,None)                for row in csvReader:                    csvWriter(row)
csv5
需要做网站?需要网络推广?欢迎咨询客户经理 13272073477