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 判断是否为正小数和正整数的实例

python 判断是否为正小数和正整数的实例 实现代码: def check_float(string): #支付时,输入的金额可能是小数,也可能是整数 s = str(st...

Python 字符串与数字输出方法

如下所示: x = 3 print(x+"nihao") 这样会报错 x = 3 print(x,"nihao") 这样不会报错,额,今天发现的一个小知识,记录一下 以上这篇...

详解python中字典的循环遍历的两种方式

开发中经常会用到对于字典、列表等数据的循环遍历,但是python中对于字典的遍历对于很多初学者来讲非常陌生,今天就来讲一下python中字典的循环遍历的两种方式。 注意: python2...

浅谈Python访问MySQL的正确姿势

Py2 时代,访问 MySQL 数据库的模块除了 PyMySQL 和 MySQL-python 之外,还有以速度见长的 Umysql,以及非常小众的 Oursql 模块。进入了 Py3...

python numpy元素的区间查找方法

找了半天,以为numpy的where函数像matlab 的find函数一样好用,能够返回一个区间内的元素索引位置。结果没有。。(也可能是我没找到) 故自己写一个函数,找多维数组下的,在某...