csv是文本格式,有python自带的csv模块,很方便进行处理。
## 读取数据 import csv exampleFile = open('example.csv') exampleReader = csv.reader(exampleFile) exampleData = list(exampleReader) print(exampleData) print(exampleData[0]) print(exampleData[0][0]) print(exampleData[1][1]) exampleFile = open('example.csv') # Reader对象只能循环遍历一次,再次读取需要再次创建对象 exampleReader = csv.reader(exampleFile) for row in exampleReader: print('Row #' + str(exampleReader.line_num) + ' ' + str(row)) # exampleReader.line_num 当前行的编号 ## Writer对象 import csv outputFile = open('output.csv','w',newline='') outputWriter = csv.writer(outputFile) outputWriter.writerow(['spam','eggs','bacon','ham']) outputWriter.writerow(['hello,world!','eggs','bacon','ham']) outputWriter.writerow(['1,2,3.13,4']) outputFile.close() ## delimiter及lineterminator参数,设置单元格分隔符及行分隔符 import csv csvFile = open('output.csv','w',newline='') csvWriter = csv.writer(csvFile,delimiter=r'\t',lineterminator='\n\n') # 制表符分割 及 空行换行 csvWriter.writerow(['spam','eggs','bacon','ham']) csvWriter.writerow(['hello,world!','eggs','bacon','ham','outputFile']) csvWriter.writerow([1,2,3.13,4]) ## 合并当前目录下所有csv文件,并删除表头 # Removes the header from all CSV files in the current working directory. import csv,os os.makedirs('headerRemoved',exist_ok=True) # Loop through every file in the current working directory. for csvFilename in os.listdir('.'): if not csvFilename.endswith('.csv'): continue # skip non-csv files print('Removing header from ' + csvFilename + '...') # Read the CSV file in (skipping first row) csvRows = [] csvFileObj = open(csvFilename) readerObj = csv.reader(csvFileObj) for row in readerObj: if readerObj.line_num == 1: continue # skip first row csvRows.append(row) csvFileObj.close() # write to the CSV file. csvFileObj = open(os.path.join('headerRemoved',csvFilename),'w',newline='') csvWriter = csv.writer(csvFileObj) for row in csvRows: csvWriter.writerow(row) csvFileObj.close()