python读写csv数据(python读取csv数据计数)
Python csv模块(读写文件)
CSV文件又称为逗号分隔值文件,是一种通用的、相对简单的文件格式,用以存储表格数据,包括数字或者字符。CSV是电子表格和数据库中最常见的输入、输出文件格式。
通过爬虫将数据抓取的下来,然后把数据保存在文件,或者数据库中,这个过程称为数据的持久化存储。本节介绍Python内置模块CSV的读写操作。
1)csv.writer()
csv模块中的writer类可用于读写序列化的数据,其语法格式如下:
参数说明:
csvfile:必须是支持迭代(Iterator)的对象,可以是文件(file)对象或者列表(list)对象。
dialect:编码风格,默认为excel的风格,也就是使用逗号,分隔。
fmtparam:格式化参数,用来覆盖之前dialect对象指定的编码风格。
如果想同时写入多行数据,需要使用writerrows()方法,代码如下所示:
aggs.csv文件内容:
2)csv.DictWriter()
当然也可使用DictWriter类以字典的形式读写数据,使用示例如下:
name.csv文件内容,如下所示:
1)csv,reader()
csv模块中的reader类和DictReader类用于读取文件中的数据,其中reader()语法格式如下:
2)csv.DictReader()
应用示例如下:
输出结果:
开课吧广场-人才学习交流平台
怎么用python读取csv数据
这两天刚好看到,Python CookBook上有说到。这里是三种读取csv的方法。
文件格式是这样的
Region,DATE_,RAW_ACU
zh_ch,Jan 27 2017,208172
import?csv
from?collections?import?namedtuple
#?with?open('data.csv')?as?f:
#?????f_csv?=?csv.reader(f)
#?????headers?=?next(f_csv)
#?????for?row?in?f_csv:
#?????????#?print(row)
#?????????print(row[0],?row[1])
#?with?open('data.csv',?encoding='utf-8-sig')?as?f:
#?????f_csv?=?csv.reader(f)
#?????headers?=?next(f_csv)
#?????print(headers)
#?????Row?=?namedtuple('Row',?headers)
#?????for?r?in?f_csv:
#?????????row?=?Row(*r)
#?????????print(row.Region,?row.DATE_)
with?open('data.csv',?encoding='utf-8-sig')?as?f:
????f_csv?=?csv.DictReader(f)
????for?row?in?f_csv:
????????print(row['DATE_'],?row)
具体可以看这个文档。。
python中怎么读取csv文件
Python读取CSV文件方法如下:
如下是一个CVS文件
使用Python打开CSV可以直接使用open函数打开,然后使用reader函数读取内容,实现代码如下:
运行结果如下:
更多Python相关技术文章,请访问Python教程栏目进行学习!以上就是小编分享的关于python中怎么读取csv文件的详细内容希望对大家有所帮助,更多有关python教程请关注环球青藤其它相关文章!
python—CSV的读写
1.写入csv数据
import csv
header=['class','name','sex','height','year']
rows=[
[1,'xiaoming','male',168,23],
[1,'xiaohong','female',162,22],
[2,'xiaozhang','female',158,21],
[2,'xiaoli','male',158,21]
]
with open('csvdir.csv','w',newline='')as f:? ? ? ? ? #newline=" "是为了避免写入之后有空行
????????ff=csv.writer(f)
????????ff.writerow(header)
? ? ????ff.writerows(rows)
2.在写入字典序列类型数据的时候,需要传入两个参数,一个是文件对象——f,一个是字段名称——fieldnames,到时候要写入表头的时候,只需要调用writerheader方法,写入一行字典系列数据调用writerrow方法,并传入相应字典参数,写入多行调用writerows ?
import csv
headers = ['class','name','sex','height','year']
rows = [
? ? ? ? {'class':1,'name':'xiaoming','sex':'male','height':168,'year':23},
? ? ? ? {'class':1,'name':'xiaohong','sex':'female','height':162,'year':22},
? ? ? ? {'class':2,'name':'xiaozhang','sex':'female','height':163,'year':21},
? ? ? ? {'class':2,'name':'xiaoli','sex':'male','height':158,'year':21},
? ? ]
with open('test2.csv','w',newline='')as f:
? ? ? f_csv = csv.DictWriter(f,headers)
? ? ? f_csv.writeheader()
? ? ? f_csv.writerows(rows)
注意:列表和字典形式的数据写入是不一样的!!!!!!
3.csv的读取,和读取文件差不多:
import csv?
with open('test.csv')as f:
? ? f_csv = csv.reader(f)
? ? for row in f_csv:
? ? ? ? print(row)