csv文件操作
1.python2中:
import csv infos = [
['peter','male'],
['marry','female'],
['johon','male'],
['rose','female'],
['mike','male']
]
#写入
with open('infos.csv','wb') as f:
csvout = csv.writer(f)
csvout.writerows(infos)
#读取
with open('infos.csv','rb') as f:
csvin = csv.reader(f)
data = [row for row in csvin]
with open('infos.csv','r') as f:
csvin = csv.reader(f)
for row in csvin:
print 'name:%s,gender:%s' %(row[0],row[1])
效果:

注意: 读取和写入都是以二进制的方式,才能保证没有空行
with open('infos.csv','wb') as f:
csvout = csv.DictWriter(f,fieldnames=['name','gender'])
csvout.writeheader()
csvout.writerows(infos)
with open('infos.csv','rb') as f:
csvin = csv.DictReader(f)
data = [row for row in csvin]
with open('infos.csv','r') as f:
csvin = csv.DictReader(f,fieldnames=['name','gender'])
for row in csvin:
print 'name:%s,gneder:%s' %(row['name'],row['gender'])

但是,在python3中writerow CSV文件多一个空行,如图:

解决方法:
打开文件时指定换行符为""(空字符)
#打开文件时候,指定换行符为""
with open('infos.csv','w',newline='') as f:
csvout = csv.writer(f)
csvout.writerows(infos)
csv文件操作的更多相关文章
- java csv 文件 操作类
一个CSV文件操作类,功能比较齐全: package tool; import java.io.BufferedReader; import java.io.BufferedWriter; impor ...
- [Python Study Notes]csv文件操作
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...
- SpringBatch Sample (二)(CSV文件操作)
本文将通过一个完整的实例,与大家一起讨论运用Spring Batch对CSV文件的读写操作.此实例的流程是:读取一个含有四个字段的CSV文件(ID,Name,Age,Score),对读取的字段做简单的 ...
- 使用Python对Csv文件操作
csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格: 就可以存储为csv文件,文件内容是: No.,Name,Age,Score 1,mayi, ...
- Python csv文件操作
一.open文件打开和with open as 文件打开的区别 file= open("test.txt","r") try: for line in file ...
- 一个封装好的CSV文件操作C#类代码
using System.Data; using System.IO; namespace DotNet.Utilities { /// <summary> /// CSV文件转换类 // ...
- 【WIP】Ruby CSV文件操作
创建: 2017/09/30 ...
- python3csv与xlsx文件操作模块(csv、xlsxwriter)
一.csv模块实现csv文件操作 1.CSV介绍 CSV,全称为Comma-Separated Values,它以逗号分隔值,其文件以纯文本形式存储表格数据,该文件是一个字符序列,可以由任意数目的记录 ...
- Spring-Batch CSV文件读取时的注意点
按照Spring Batch 之 Sample(CSV文件操作)(四) 的方式配置好csvItemReader, 发现读入的数据很是奇怪,通过修改配置文件发现, commit-interval=&qu ...
随机推荐
- textarea去掉右下三角号
/*去掉textarea右下角三角符号*/ resize : none; 修改样式直接覆盖就行,会把默认样式覆盖掉.如border,width,height,border-radius
- c标签取数组中的对象值的2种方法
1:循环遍历 <c:forEach items="${partsDeltailsList}" var="var" varStatus="vs&q ...
- lamp 相关
1.LAMP = linux + apache + mysql(mariadb/mongodb) + php 2.mysql 安装:先下载安装包: wget -c http://mirrors.soh ...
- php基础-3
php的数据类型 字符串 字符串的声明:$str = "aaa"; 字符串的方法 strpos(str, find_str):该方法在一个字符串中查找需要查找的字符串,并回来该字符 ...
- STM32F4的sct文件理解
原文地址http://blog.sina.com.cn/s/blog_898f36590100ya2l.html ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...
- The Carbon driver has not been ported to 64bits, and very few parts of Windows.Forms will work properly, or at all Stacktrace
解决地址:https://stackoverflow.com/questions/45776247/mono32-wont-work-mono64-throws-errors 应该是电脑的位与安装的m ...
- 深入详解美团点评CAT跨语言服务监控(三)CAT客户端原理
cat客户端部分核心类 message目录下面有消息相关的部分接口 internal目录包含主要的CAT客户端内部实现类: io目录包含建立服务端连接.重连.消息队列监听.上报等io实现类: spi目 ...
- MySQL创建表,更新表,删除表,重命名表
创建表 mysql> create table 表名( -> 列名 数据类型 是否为空 auto_increment, -> 列名 数据类型 是否为空... -> ... -& ...
- YUICompressor的安装及使用(一)
step1:下载ant和YUICompressor 1) Ant: http://ant.apache.org/bindownload.cgi 打开页面后,下拉滚动条,找到如下图所示,单 ...
- tomcat源码阅读之默认连接器
默认连接器 一.UML图: 1.所有的连接器都要实现Connector接口,必须创建Request对象和Response对象,httpConnector作为默认连接器,肯定也是要实现Connector ...