Python基于csv模块实现读取与写入csv数据的方法

yipeiwu_com6年前Python基础

本文实例讲述了Python基于csv模块实现读取与写入csv数据的方法。分享给大家供大家参考,具体如下:

通过csv模块可以轻松读取格式为csv的文件,而且csv模块是python内置的,不需要下载就可以直接用。

一、准备csv文件

文件名是 e:\t.csv,文件内容:

org_id,org_name,state,emp_id
1,销售1,'1',123
2,销售2,'0',321
3,销售3,'1',231
1,,'1',1234

二、读取csv数据

代码非常简单:

# -*- coding:gbk -*-
import csv,os
##数据文件 E:\t.csv
##org_id,org_name,state,emp_id
##1,销售1,'1',123
##2,销售2,'0',321
##3,销售3,'1',231
##1,,'1',1234
#拼接文件路径,os.path.sep是路径分隔符
sFilename = 'e:'+os.path.sep+'t.csv'
#打开文件
eFile = open(sFilename)
#读取csv文件
eReader=csv.reader(eFile)
#遍历csv对象获取数据,每一条数据都是一个list,每一列是list中的一个元素
#line_num是行号,这里只读取前100行
for row in eReader:
  if eReader.line_num <= 100:
    print('行 '+str(eReader.line_num) + ': '+str(row)) #打印行号
  else:
    break
#关闭文件
eFile.close()

输出:

三、写入csv数据

# -*- coding:gbk -*-
import csv,os
sFilename = os.path.join('E:','r.csv')
eFile = open(sFilename,'w',newline='')
eWriter = csv.writer(eFile,delimiter=',',lineterminator='\r\n')
eWriter.writerow(['org_id','org_name','state','emp_id'])
eWriter.writerow([123,'销售10','1',1111])
eWriter.writerow([1234,'销售16','0',11115])
eFile.close()

输出:

更多Python相关内容感兴趣的读者可查看本站专题:《Python操作Excel表格技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

python 画3维轨迹图并进行比较的实例

python 画3维轨迹图并进行比较的实例

一. 数据的格式 首先我们需要x,y,z三个数据进行画图。从本实验用到的数据集KITTI 00.txt中举例: 1.000000e+00 9.043680e-12 2.326809e...

django 通过URL访问上传的文件方法

django 通过URL访问上传的文件方法

Django2.0 通过URL访问上传的文件(pdf、picture等) Django是一个成熟的web框架,基于python实现,有很多的优点,很容易快速上手(详见官网:https:/...

详解Python是如何实现issubclass的

使用Python内置的issubclass方法很方便的检测一个类是否是另一个类的子类。 这个是issubclass的文档: issubclass(class, classinfo) R...

如何基于Python创建目录文件夹

这篇文章主要介绍了如何基于Python创建目录文件夹,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Python对文件的操作还算是方便...

如何为Python终端提供持久性历史记录

问题 有没有办法告诉交互式Python shell在会话之间保留其执行命令的历史记录? 当会话正在运行时,在执行命令之后,我可以向上箭头并访问所述命令,我只是想知道是否有某种方法可以保存...