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

yipeiwu_com7年前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制作朋友圈九宫格图片

本文实例为大家分享了python朋友圈九宫格图片的具体制作代码,供大家参考,具体内容如下 将一张图片,切分成九宫格的样式: 原图: # -*- coding: UTF-8 -*-...

TensorFlow损失函数专题详解

TensorFlow损失函数专题详解

一、分类问题损失函数——交叉熵(crossentropy) 交叉熵刻画了两个概率分布之间的距离,是分类问题中使用广泛的损失函数。给定两个概率分布p和q,交叉熵刻画的是两个概率分布之间的距...

解决Django一个表单对应多个按钮的问题

需求: 在django中,有时候我们需要在一个表单中设置多个按钮实现不同的功能。 解决方法: 为不同按钮添加不同name属性,然后再后台判断name值。python2环境下,例如: 我们...

Python实现windows下模拟按键和鼠标点击的方法

本文实例讲述了Python实现windows下模拟按键和鼠标点击的方法。分享给大家供大家参考。具体如下: 这段代码可以模拟在窗口上按下按键、鼠标左键点击、鼠标右键点击、鼠标双击等等...

对python中array.sum(axis=?)的用法介绍

对python中array.sum(axis=?)的用法介绍

根据代码中运行的结果来看,主要由以下几种: 1. sum():将array中每个元素相加的结果 2. axis对应的是维度的相加。 比如: 1、axis=0时,对饮搞得是第一个维度元素的...