本文实例为大家分享了python读写csv数据的具体代码,供大家参考,具体内容如下
案例:
通过股票网站,我们获取了中国股市数据集,它以csv数据格式存储
Data,Open,High,Low,Close,Volume,Adj Close
2016-06-28,8.63,8.47,8.66,8.70,500000,8.70
2016-06-28,8.63,8.47,8.66,8.70,500000,8.70
2016-06-28,8.63,8.47,8.66,8.70,500000,8.70
......
需求:请将2016年成交量超过500000记录存储到另外一个csv文件中
什么是csv类型数据?
类似表单,第一行数据是字段名字,单独数据以逗号隔开
如何做?
获取股票信息的csv类型数据
以二进制读的形式打开csv类型数据,csv.reader(文件对象)返回一个对象,通过对象操作
以二进制写的形式打开新的csv数据,csv.writerrow(文件对象)返回一个对象,通过对象操作
循环读取csv中数据,通过if判断是否满足需求,满足的写入到新的csv文件中
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#!/usr/bin/python3
import csv
def r_w_csv():
with open ( 'pingan.csv' , 'rb' ) as rf:
# 打开原文件读取进来,csv.read(rf)方式
reader = csv.read(rf)
with open ( 'pingan_copy.csv' , 'wb' ) as wf:
# 打开另外一个文件,csv.writer(wf)方式,写入csv数据头部
writer = csv.writer(wf)
headers = reader. next ()
writer.writerrow(headers)
# 给索引命名,增加可读性
data, amount = 0 , 5
# 写入时间2016年,营业额大于等于50000000的数据
for row in reader:
if row[data] < '2016-01-01' :
break
if int (row[amount]) > = 50000000 :
writer.writerrow(row)
if __name__ = = '__main__' :
r_w_csv()
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://www.cnblogs.com/2bjiujiu/p/7284346.html