第三章——供机器读取的数据(CSV与JSON)
第三章使用的数据文件:

一、CSV数据

Python代码1
import csv
csvfile = open('data-text.csv','rb') #打开文件,只读模式('wb'表示写)
reader = csv.reader(csvfile) #读取数据
for row in reader: #输出数据
print row
在PyCharm中运行:

在控制台中使用命令行运行:

(运行代码文件只需要进入到其所在文件夹,输入:python 文件名)

Python代码2
import csv
csvfile = open('data-text.csv','rb')
reader = csv.DictReader(csvfile)
for row in reader:
print row
在PyCharm中运行:

在控制台中使用命令行运行:

注:
1、使用命令行编译时需要进入到代码文件所在文件夹,并且数据文件应与代码文件所在同一目录下(因为代码中没有指定数据文件路径)
2、对比上面两个代码如下,对比输出,代码1输出的是列表格式,代码2输出的是字典格式
代码1:reader = csv.reader(csvfile) #读取数据
代码2:reader = csv.DictReader(csvfile)
二、JSON数据
.json为文件扩展名,极少数命名不规范的.js文件也可能包含的是JSON数据(.js文件一般是JavaScript文件 )
JSON数据文件部分内容

JSON文件内容类似于Python中的字典,每一行都有键和值。
Python代码
import json
json_data = open('data-text.json').read()
data = json.loads(json_data)
for item in data:
print item
在PyCharm上运行

比较CSV与JOSN中Python代码的不同
1、CSV以只读方式打开文件(文件变量),JSON读取文件的内容后还把其保存在变量json_data中(内容变量)
2、CSV中open()返回的是一个文件对象,JSON中得到的是一个字符串
运行type()来检测一下(使用命令行逐句输入(注意要在数据文件路径下运行)):
filename = 'data-text.json' type(open(filename,'rb')) type(open(filename),read())

由以上结果可以看出使用open()函数直接打开文件,获得的是一个文件类型的数据;而使用read()读取后获得的是一个字符串类型
第三章——供机器读取的数据(CSV与JSON)的更多相关文章
- 第三章——供机器读取的数据(XML)
本书使用的文件.代码:https://github.com/huangtao36/data_wrangling 机器可读(machine readable)文件格式: 1.逗号分隔值(Comma-Se ...
- python数据处理(一)之供机器读取的数据 csv,json,xml
代码与资料 https://github.com/jackiekazil/data-wrangling 1 csv 1.1导入csv数据 1.2将代码保存到文件中并在命令行中运行 2.json 2 导 ...
- 第三章:使用ListView展示数据
一.ImageList:存储图像集合 Images 存储的所有图像 ImageSize 图像的大小 ColorDepth 颜色数 TransparentColor 被视为透明的颜色 先设置ColorD ...
- 数据库-第三章 关系数据库标准语言SQL-3.3 数据查询
数据查询 例: 一.单表查询 1.定义 是指仅涉及一个表的查询 2.选择表中的若干列 查询指定列 例: 查询全部列 例: 查询经过计算的值 例: 3.选择表中的若干元组 消除取值重复的行 例: 查询满 ...
- SQL SERVER 2012 第三章 使用INSERT语句添加数据
INSERT [TOP (<expression>) [PERCENT] [INTO] <tabular object>[(column list)][OUTPUT <o ...
- flask框架下读取mysql数据 转换成json格式API
研究了一天 因为需要从数据库拿数据然后转换成json的格式 expose出去为 API 发现一条数据是容易,两条以上我居然搞了这么久 好歹出来了 先贴一下 后面更新 mysql的操作 比较容易了htt ...
- firedac数据集数据序列为JSON
firedac数据集数据序列为JSON FIREDAC数据库引擎充分地考虑了跨平台和跨语言的支持. 因此,FIREDAC数据集可以序列为BIN\XML\JSON,三种格式. firedac数据集数据序 ...
- (第二章第三部分)TensorFlow框架之读取二进制数据
系列博客链接: (第二章第一部分)TensorFlow框架之文件读取流程:https://www.cnblogs.com/kongweisi/p/11050302.html (第二章第二部分)Tens ...
- Laxcus大数据管理系统2.0(5)- 第三章 数据存取
第三章 数据存取 当前的很多大数据处理工作,一次计算产生几十个GB.或者几十个TB的数据已是正常现象,驱动数百.数千.甚至上万个计算机节点并行运行也已经不足为奇.但是在数据处理的后面,对于这种在网络间 ...
随机推荐
- Redis总导航目录
NoSQL入门和概述 NoSQL入门概述 3V + 3高 当下的NoSQL经典应用 NoSQL数据模型简介 NoSQL数据库的四大分类 在分布式数据库中CAP原理CAP+BASE Redis入门介绍 ...
- yii2 shi用modal弹窗 select2搜索框无法使用
在modal使用begin的时候指定options选项的tabindex为false Modal::begin([ // ...... 'options' => [ 'tabindex' =&g ...
- MongoDB入门---数据库&&&集合的基本操作
MongoDB作为一种nosql的数据库,它自己本身的增伤改查还有数据库集合的创建和展示与一般的数据库较之是有一部分差别的.我们今天就来看一下MongoDB的一些基本操作. 首先呢,就是先来数据 ...
- 【Hutool】Hutool工具类之String工具——StrUtil
类似的是commons-lang中的StringUtils 空与非空的操作——经典的isBlank/isNotBlank.isEmpty/isNotEmpty isBlank()——是否为空白,空白的 ...
- 北京Uber优步司机奖励政策(1月13日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- eclipse插件SCON的SConscript文件和头文件以及C文件包含路径
1. 本次的头文件路径\Hi2110-B657SP3-SDK\src_release_657SP3\src\lib\onenet\public,以此例子作为研究,本次开发使用eclipse,用到SCO ...
- linux下免安装版本mysql5.5 配置
进入/usr/local #cd /usr/local 下载 #wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.39-linux ...
- angular-使用iframe做独立页(iframe传值到angular和iframe里请求后台数据)
这个方法使用过两次.一次是在项目中嵌入一个表达式生成器.因为用别人做好的网页变成组件很难,而且里面用了jq,与angular思想相反不能用.另一次是因为想要单独引用样式.而innerHTML使用的样式 ...
- 【转】Buff机制及其实际运用
转自 http://bbs.gameres.com/forum.php?mod=viewthread&tid=215027 首先我想说的是,这是一套机制,并不是单独的一个系统,所谓机制就是一种 ...
- 同台服务器 部署多个tomcat 需要做的修改
需要修改以下加粗部分: 1:访问端口 8080->8081 2:shutdown 端口 8005->8015 3: AJP端口 8001->8010 <?xml version ...