逗号分隔值(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. EF中防止sql注入

    EF作为一个orm框架,本身以及放置了sql的注入,但是如果我们需要执行sql语句的时候了?比如,我们需要查询视图"select * from VM where 条件 = {0}" ...

  2. selenium 文件上传

    一般分两个场景:一种是input标签,这种可以用selenium提供的send_keys()方法轻松解决: 另外一种非input标签实现起来比较困难,可以借助autoit工具或者SendKeys第三方 ...

  3. appium-android 遇到swipe函数无法使用的问题及解决办法

    问题:cannot resolve method swipe() 问题出现原因:File->Project Structure->Modules->Dependencies-> ...

  4. Git 帮助

    Git 配置 配置 git config --global user.name "..." git config --global user.email "...&quo ...

  5. Python - 如何统计序列中元素出现的频次

    1.用内置的count()方法,该方法返回子字符串在字符串中出现的次数(同样适用于列表)2.用collections模块的Counter类 示例: from collections import Co ...

  6. IOS Xcode编译项目-报错“ld: library not found for -XX”

    一般是因为导入新项目的时候报错的.原因是引入的依赖库的问题.重新执行pod install应该可以解决.不过,有时候如果重新执行pod install无法执行,可以采用以下方法: 在终端中cd到项目所 ...

  7. .Net Core 管道中的ConfigureServices 和Configure

    ConfigureServices    就是配置服务器的DI容器 把需要的中间件等一些东西添加到DI容器   最后都是添加到IServiceCollection里面 比如 services.AddI ...

  8. DAY16 模块和包的导入

    一.包 1.包的定义 包:就是一系列模块的结合体 2.重点 1.包中一定要有一个专门来管理包中所有模块的文件 2.包名:存放一系列模块的文件夹名字 3.包名(包对象)存放的是管理模块的那个文件的地址, ...

  9. JS-函数作用域

    如果变量在函数内没有声明(没有使用 var 关键字),该变量为全局变量.

  10. Jmeter转换成中文模式

    本片文章转至:https://blog.csdn.net/him2014/article/details/79603887 下载安装好Jmeter后默认的是英文,对于我这种学渣来说简直就是受到了100 ...