python如何读写csv数据

yipeiwu_com7年前Python基础

本文实例为大家分享了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文件中

#!/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()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python2 与python3的print区别小结

在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异 主要体现在以下几个方面: 1.python3中print是一个内置函数,有多个参...

TensorFlow如何实现反向传播

使用TensorFlow的一个优势是,它可以维护操作状态和基于反向传播自动地更新模型变量。 TensorFlow通过计算图来更新变量和最小化损失函数来反向传播误差的。这步将通过声明优化...

编程语言Python的发展史

编程语言Python的发展史

Python是我喜欢的语言,简洁、优美、易用。前两天,我很激昂地向朋友宣传Python的好处。 “好吧,我承认Python不错,但它为什么叫Python呢?” “呃,似乎是一个电视剧的名...

Python3中多线程编程的队列运作示例

Python3,开一个线程,间隔1秒把一个递增的数字写入队列,再开一个线程,从队列中取出数字并打印到终端 #! /usr/bin/env python3 import time i...

python打开windows应用程序的实例

可以加上时间判断,让程序在固定的时间启动。 #coding=utf-8 #!/usr/bin/python import os def open_app(app_dir): os...