案例:

通过股票网站,我们获取了中国股市数据集,它以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类型数据?

类似表单,第一行数据是字段名字,单独数据以逗号隔开

如何做?

  1. 获取股票信息的csv类型数据
  2. 以二进制读的形式打开csv类型数据,csv.reader(文件对象)返回一个对象,通过对象操作
  3. 以二进制写的形式打开新的csv数据,csv.writerrow(文件对象)返回一个对象,通过对象操作
  4. 循环读取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_如何读写csv数据的更多相关文章

  1. 6-1 如何读写csv数据

    >>> from urllib import urlretrieve >>> urlretrieve('http://table.finance.yahoo.com ...

  2. 使用Python读写csv文件的三种方法

    Python读写csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 前言 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是 ...

  3. python读写csv文件

    文章链接:https://www.cnblogs.com/cloud-ken/p/8432999.html Python读写csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 前言 逗 ...

  4. 利用java反射读写csv中的数据

      前一段有个需求需要将从数据库读取到的信息保存到csv文件中,在实现该需求的时候发现资料比较少,经过收集反射和csv相关资料,最终得到了如下程序.  1.在使用java反射读取csv文件数据时,先通 ...

  5. 支持各种特殊字符的 CSV 解析类 (.net 实现)(C#读写CSV文件)

    CSV是一种十分简洁的数据结构,在DOTNET平台实际使用中发现微软官方并没有提供默认的方法,而网上好多例子发现实现并不严谨甚至一些含有明显错误,所以后面自己实现了一个读写工具类,这里发出来希望方便后 ...

  6. python3读写csv文件

    python读取CSV文件   python中有一个读写csv文件的包,直接import csv即可.利用这个python包可以很方便对csv文件进行操作,一些简单的用法如下. 1. 读文件 csv_ ...

  7. MATLAB中文件的读写和数据的导入导出

    http://blog.163.com/tawney_daylily/blog/static/13614643620111117853933/ 在编写一个程序时,经常需要从外部读入数据,或者将程序运行 ...

  8. python3使用csv包,读写csv文件

    python操作csv,现在很多都用pandas包了,不过python还是有一个原始的包可以直接操作csv,或者excel的,下面举个例子说明csv读写csv文件的方法: import os impo ...

  9. 使用Spark读写CSV格式文件(转)

    原文链接:使用Spark读写CSV格式文件 CSV格式的文件也称为逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号.在本文中的CSV格 ...

随机推荐

  1. T-SQL逻辑查询处理

    引言 本文是对<Microsoft SQL SERVER 2008技术内幕 T-SQL查询>中的第一章做的阅读笔记,这一章的主要内容是分析SQL查询中各子句的执行顺序.如果你对此已了然于胸 ...

  2. php的二维数组排序

    //建立一个$arr的二维数组 $arr=array( array('name'=>'e','age'=>5), array('name'=>'b','age'=>2), ar ...

  3. [转载]github在线更改mysql表结构工具gh-ost

    GitHub正式宣布以开源的方式发布gh-ost:GitHub的MySQL无触发器在线更改表定义工具! gh-ost是GitHub最近几个月开发出来的,目的是解决一个经常碰到的问题:不断变化的产品需求 ...

  4. wn-cli 像React组件开发一样来开发微信小程序

    项目地址:wn-cli wn-cli wn-cli 像React组件开发一样来开发微信小程序 名字由来:wn -> weapp native 取第一个字母 Install npm install ...

  5. 【读书笔记】【深入理解ES6】#10-改进的数组功能

    创建数组 在ES6之前,创建数组的方式主要有两种: 调用 Array 构造函数 用数组字面量语法 为了简化数组的创建过程,ES6新增了两个方法: Array.of() Array.from() Arr ...

  6. ZooKeeper 状态机

    ZAB状态机 QuorumPeer这个线程负责状态机的维护 @Override public void run() { ... try { /* * Main loop */ while (runni ...

  7. Linux之内存描述符mm_struct

    Linux对于内存的管理涉及到非常多的方面,这篇文章首先从对进程虚拟地址空间的管理说起.(所依据的代码是2.6.32.60) 无论是内核线程还是用户进程,对于内核来说,无非都是task_struct这 ...

  8. MYSQL的REPLACE和ON DUPLICATE KEY UPDATE使用

    REPLACE 我们在使用数据库时可能会经常遇到这种情况.如果一个表在一个字段上建立了唯一索引,当我们再向这个表中使用已经存在的键值插入一条记录,那将会抛出一个主键冲突的错误.当然,我们可能想用新记录 ...

  9. ogg-oracle to sqlserver

    环境: source:  54     Centos7  oracle12.2           ogg12.3 target  :    52 Windows sqlserver2012      ...

  10. MySQL中MyISAM 和 InnoDB 的基本区别

    有以下5点 1.innodb支持事务,myisam不支持 2.innodb支持mvcc,myisam不支持 3.innodb支持外键,myisam不支持 4.innodb不支持 FULLTEXT类型的 ...