逗号分隔值(Comma-Separated Values,CSV)

1 csv数据

还有一种数据类型,叫制表分隔值(tab-separated values,TSV)数据,有时与CSV归为一类。

若文件扩展名是.tsv,则文件很可能是TSV数据

若文件扩展名是.csv,则既可能是TSV,又可能是CSV

导入CSV数据

import csv
csvFile = open('600050.csv','r') #'r'只读
read = csv.reader(csvFile) for row in read:
print(row)

得到一组列表(csv.reader)形式的数据,这是一组股票数据。

['Date', 'Open', 'High', 'Low', 'Close', 'Adj Close', 'Volume']
['2017-10-09', '7.510000', '7.530000', '7.260000', '7.290000', '7.290000', '']
['2017-10-10', '7.270000', '7.320000', '7.150000', '7.200000', '7.200000', '']
['2017-10-11', '7.180000', '7.200000', '7.080000', '7.150000', '7.150000', '']
['2017-10-12', '7.190000', '7.410000', '7.140000', '7.320000', '7.320000', '']
['2017-10-13', '7.270000', '7.300000', '7.220000', '7.250000', '7.250000', '']
['2017-10-16', '7.280000', '7.380000', '7.200000', '7.210000', '7.210000', '']
['2017-10-17', '7.180000', '7.240000', '7.150000', '7.210000', '7.210000', '']
['2017-10-18', '7.210000', '7.260000', '7.130000', '7.160000', '7.160000', '']
['2017-10-19', '7.150000', '7.150000', '6.920000', '6.920000', '6.920000', '']
['2017-10-20', '6.970000', '7.030000', '6.950000', '6.990000', '6.990000', '']
['2017-10-23', '6.980000', '7.150000', '6.980000', '7.120000', '7.120000', '']
['2017-10-24', '7.100000', '7.110000', '7.010000', '7.060000', '7.060000', '']
['2017-10-25', '7.060000', '7.150000', '7.020000', '7.080000', '7.080000', '']
['2017-10-26', '7.060000', '7.150000', '7.050000', '7.130000', '7.130000', '']
['2017-10-27', '7.200000', '7.520000', '7.200000', '7.350000', '7.350000', '']
['2017-10-30', '7.350000', '7.650000', '7.250000', '7.650000', '7.650000', '']
['2017-10-31', '7.600000', '7.680000', '7.510000', '7.640000', '7.640000', '']

还可以得到字典形式的数据(csv.DictReader)

import csv
csvFile = open('600050.csv','r') #'r'只读
read = csv.DictReader(csvFile) for row in read:
print(row)

得到:

{'High': '7.530000', 'Adj Close': '7.290000', 'Close': '7.290000', 'Low': '7.260000', 'Open': '7.510000', 'Date': '2017-10-09', 'Volume': ''}
{'High': '7.320000', 'Adj Close': '7.200000', 'Close': '7.200000', 'Low': '7.150000', 'Open': '7.270000', 'Date': '2017-10-10', 'Volume': ''}
{'High': '7.200000', 'Adj Close': '7.150000', 'Close': '7.150000', 'Low': '7.080000', 'Open': '7.180000', 'Date': '2017-10-11', 'Volume': ''}
{'High': '7.410000', 'Adj Close': '7.320000', 'Close': '7.320000', 'Low': '7.140000', 'Open': '7.190000', 'Date': '2017-10-12', 'Volume': ''}
{'High': '7.300000', 'Adj Close': '7.250000', 'Close': '7.250000', 'Low': '7.220000', 'Open': '7.270000', 'Date': '2017-10-13', 'Volume': ''}
{'High': '7.380000', 'Adj Close': '7.210000', 'Close': '7.210000', 'Low': '7.200000', 'Open': '7.280000', 'Date': '2017-10-16', 'Volume': ''}
{'High': '7.240000', 'Adj Close': '7.210000', 'Close': '7.210000', 'Low': '7.150000', 'Open': '7.180000', 'Date': '2017-10-17', 'Volume': ''}
{'High': '7.260000', 'Adj Close': '7.160000', 'Close': '7.160000', 'Low': '7.130000', 'Open': '7.210000', 'Date': '2017-10-18', 'Volume': ''}
{'High': '7.150000', 'Adj Close': '6.920000', 'Close': '6.920000', 'Low': '6.920000', 'Open': '7.150000', 'Date': '2017-10-19', 'Volume': ''}
{'High': '7.030000', 'Adj Close': '6.990000', 'Close': '6.990000', 'Low': '6.950000', 'Open': '6.970000', 'Date': '2017-10-20', 'Volume': ''}
{'High': '7.150000', 'Adj Close': '7.120000', 'Close': '7.120000', 'Low': '6.980000', 'Open': '6.980000', 'Date': '2017-10-23', 'Volume': ''}
{'High': '7.110000', 'Adj Close': '7.060000', 'Close': '7.060000', 'Low': '7.010000', 'Open': '7.100000', 'Date': '2017-10-24', 'Volume': ''}
{'High': '7.150000', 'Adj Close': '7.080000', 'Close': '7.080000', 'Low': '7.020000', 'Open': '7.060000', 'Date': '2017-10-25', 'Volume': ''}
{'High': '7.150000', 'Adj Close': '7.130000', 'Close': '7.130000', 'Low': '7.050000', 'Open': '7.060000', 'Date': '2017-10-26', 'Volume': ''}
{'High': '7.520000', 'Adj Close': '7.350000', 'Close': '7.350000', 'Low': '7.200000', 'Open': '7.200000', 'Date': '2017-10-27', 'Volume': ''}
{'High': '7.650000', 'Adj Close': '7.650000', 'Close': '7.650000', 'Low': '7.250000', 'Open': '7.350000', 'Date': '2017-10-30', 'Volume': ''}
{'High': '7.680000', 'Adj Close': '7.640000', 'Close': '7.640000', 'Low': '7.510000', 'Open': '7.600000', 'Date': '2017-10-31', 'Volume': ''}

python机器可读数据-csv的更多相关文章

  1. Python开发一个csv比较功能相关知识点汇总及demo

    Python 2.7 csv.reader(csvfile, dialect='excel', **fmtparams)的一个坑:csvfile被csv.reader生成的iterator,在遍历每二 ...

  2. Python: 对CSV文件读写 和 Md5加密

    1. python 有专门的csv包,直接导入即可. import csv: 2. 直接使用普通文件的open方法 csv_reader=open("e:/python/csv_data/l ...

  3. python之模块csv之CSV文件一次写入多行

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #CSV文件一次写入多行 import csv #csv文件,是一种常用的文本格式,用以存储表格数据,很多程序 ...

  4. python之模块csv之CSV文件的写入(基本结构)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #CSV文件的写入(基本结构) import csv #csv文件,是一种常用的文本格式,用以存储表格数据,很 ...

  5. python之模块csv之CSV文件的写入(按行写入)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #CSV文件的写入(按行写入) import csv #csv文件,是一种常用的文本格式,用以存储表格数据,很 ...

  6. python在处理CSV文件时,字符串和列表写入的区别

    概述 Python在处理CSV文件时,如果writerow的对象是<type 'unicode'>字符串时,写入到CSV文件时将会出现一个字符占一个单元格的情况: 但是将字符串转换为列表类 ...

  7. Python中关于csv的简单操作

    Python中关于csv的简单操作 CSV操作简单,直接import csv即可, 主要使用reader和pandas 1 reader的简单使用 csv.reader("1.csv&quo ...

  8. python中操作csv文件

    python中操作csv文件 读取csv improt csv f = csv.reader(open("文件路径","r")) for i in f: pri ...

  9. Python数据写入csv格式文件

    (只是传递,基础知识也是根基) Python读取数据,并存入Excel打开的CSV格式文件内! 这里需要用到bs4,csv,codecs,os模块. 废话不多说,直接写代码!该重要的内容都已经注释了, ...

随机推荐

  1. Java并发编程的艺术读后总结

    2019.04.26 - 2019.04.28扫了一遍 Chapter volatile synchronized实现原理 Java内存模型 happen-before 重排序 顺序一致性 JMM 线 ...

  2. memcached源码分析-----slab内存分配器

    温馨提示:本文用到了一些可以在启动memcached设置的全局变量.关于这些全局变量的含义可以参考<memcached启动参数详解>.对于这些全局变量,处理方式就像<如何阅读memc ...

  3. Exception in thread "main" org.apache.ibatis.binding.BindingException: Type interface com.test.bean.groupMapper is not known to the MapperRegistry.

    Exception in thread "main" org.apache.ibatis.binding.BindingException: Type interface com. ...

  4. 解决问题:怎样在页面获取数组和List集合的长度

    解决问题:怎样在页面获取数组和List集合的长度 我们在前端遍历后台数据的时候,经常是从后台传过来一个数组或List集合,在前端页面就可以使用JSTL的<c:For each>标签遍历数据 ...

  5. Matplotlib.pyplot 把画图保存为图片

    在plt.show()之前执行plt.savefig()函数即可. 简单例子: import matplotlib.pyplot as plt x=[1,2,3,4,5] y=[10,5,15,10, ...

  6. Unity自定义定时器,模拟协程,脱离MonoBehavior控制

    using System; using System.Collections.Generic; using System.Timers; public class PETimer { private ...

  7. Java问题解决:使用maven install 和 package时出错

    今天在idea中使用maven install 和 package时出现以下问题: [WARNING] The POM for org.apache.maven.plugins:maven-compi ...

  8. mysql、nginx、php-fpm的启动与关闭

    mysql 一.启动方式 1.使用 service 启动:service mysqld start 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld start 3.使用 sa ...

  9. Request中的各种地址

    今天来得匆忙,先上图吧,稍后再整理!

  10. 第一个Azure应用

    https://www.azure.cn/zh-cn/ 学习Azure,首先看的是官网Azure介绍,因为用到了虚拟机及存储等因此,着重看这两块. 本文Demo是通过API发送消息,当收到消息后新建虚 ...