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_如何读写csv数据的更多相关文章
- 6-1 如何读写csv数据
>>> from urllib import urlretrieve >>> urlretrieve('http://table.finance.yahoo.com ...
- 使用Python读写csv文件的三种方法
Python读写csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 前言 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是 ...
- python读写csv文件
文章链接:https://www.cnblogs.com/cloud-ken/p/8432999.html Python读写csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 前言 逗 ...
- 利用java反射读写csv中的数据
前一段有个需求需要将从数据库读取到的信息保存到csv文件中,在实现该需求的时候发现资料比较少,经过收集反射和csv相关资料,最终得到了如下程序. 1.在使用java反射读取csv文件数据时,先通 ...
- 支持各种特殊字符的 CSV 解析类 (.net 实现)(C#读写CSV文件)
CSV是一种十分简洁的数据结构,在DOTNET平台实际使用中发现微软官方并没有提供默认的方法,而网上好多例子发现实现并不严谨甚至一些含有明显错误,所以后面自己实现了一个读写工具类,这里发出来希望方便后 ...
- python3读写csv文件
python读取CSV文件 python中有一个读写csv文件的包,直接import csv即可.利用这个python包可以很方便对csv文件进行操作,一些简单的用法如下. 1. 读文件 csv_ ...
- MATLAB中文件的读写和数据的导入导出
http://blog.163.com/tawney_daylily/blog/static/13614643620111117853933/ 在编写一个程序时,经常需要从外部读入数据,或者将程序运行 ...
- python3使用csv包,读写csv文件
python操作csv,现在很多都用pandas包了,不过python还是有一个原始的包可以直接操作csv,或者excel的,下面举个例子说明csv读写csv文件的方法: import os impo ...
- 使用Spark读写CSV格式文件(转)
原文链接:使用Spark读写CSV格式文件 CSV格式的文件也称为逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号.在本文中的CSV格 ...
随机推荐
- SSM框架开发web项目系列(六) SpringMVC入门
前言 我们最初的javaSE部分学习后,基本算是入门了,也熟悉了Java的语法和一些常用API,然后再深入到数据库操作.WEB程序开发,渐渐会接触到JDBC.Servlet/Jsp之类的知识,期间可能 ...
- 【有上下界的网络流】ZOJ2341 Reactor Cooling(有上下界可行流)
Description The terrorist group leaded by a well known international terrorist Ben Bladen is bulidi ...
- 快速开发基于 HTML5 网络拓扑图应用--入门篇(二)
上一篇我们绘制了一个 graphView 场景,在场景之上通过 graphView.dm() 获取数据容器,并通过 graphView.dm().add() 函数添加了两个 Node 节点,并通过 s ...
- 【读书笔记】【深入理解ES6】#10-改进的数组功能
创建数组 在ES6之前,创建数组的方式主要有两种: 调用 Array 构造函数 用数组字面量语法 为了简化数组的创建过程,ES6新增了两个方法: Array.of() Array.from() Arr ...
- C# Main函数详解
2018-01-15 22:10:59 一.Main()方法的简介 1.唯一性.一般情况下,一个C#可执行程序只有一个Main函数,作为程序入口.但是在某些情况(如单元测试中),程序拥有多个Main ...
- python基础之实现sql增删改查
# encoding:utf-8 # Author:"richie" # Date:2017/8/2 import re key_l = ['id', 'name', 'age', ...
- Linux内核打印时间戳
较为简单可行的方式是通过PrintkTime功能为启动过程的所有内核信息增加时间戳,便于汇总分析.PrintkTime最早为CELF所提供的一个内核补丁,在后来的Kernel 2.6.11版本中正式纳 ...
- (亲测)1分钟破解IDM权限,傻瓜都能学会的破解方法(番外篇:利用破解工具直接破解IDM)
Internet Download Manager (IDM)是比较好用的一款下载工具~ 上一节我讲到一种利用修改防火墙来进行阻止访问服务器,请参看这篇文章(亲测)躺着破解IDM下载权限,治疗不用破解 ...
- C. The Smallest String Concatenation
C. The Smallest String Concatenation time limit per test 3 seconds memory limit per test 256 megabyt ...
- flume1.8 Channel类型介绍(四)
1. Flume Channel Channels是events在agent上进行的存储库.Source添加events,Sink移除events. 1.1 Memory Channel(内存Chan ...