Python读取csv文件(详解版,看了无师自通)
前言
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取
python免费学习资料以及群交流解答点击即可加入
csv 文件格式的本质是一种以文本存储的表格数据(使用 Excel 工具即可读写 csv 文件)。csv 文件的每行代表一行数据,每行数据中每个单元格内的数据以逗号隔开。
Python 提供了 csv 模块来读写 csv 文件。由于 csv 文件的格式本身比较简单(通常第一行是表头,用于说明每列数据的含义,接下来每行代表一行数据),因此使用 csv 模块读取 csv 文件也非常简单:
创建 csv 模块的读取器。
循环调用 csv 读取器的 next() 方法逐行读取 csv 文件内容即可。next() 方法返回一个 list 列表代表一行数据,list 列表的每个元素代表一个单元格数据。
本节使用的是 2017 年广州天气数据的 csv 文件(数据来源于 http://lishi.tianqi.com/ 网站。下面程序示范了使用 csv 读取器来读取 csv 文件的两行内容。
上面程序中第 7 行代码创建了 CSV 读取器,第 9 行、第 12 行代码各读取文件的一行,其中第 7 行代码会返回 csv 文件的表头数据;第 9 行代码会返回真正的数据。
运行上面程序,可以看到如下输出结果:
['Date', 'Max TemperatureC', 'Min TemperatureC', 'Description', 'WindDir', 'WindForce']
['2017-1-1', '24', '13', '晴', '西南风', '1级']
从上面的输出结果可以看到,该文件的每行包含 6 个数据,分别是日期、最高温度、最低温度、天气情况、风向、风力。
掌握了 csv 读取器的用法之后,下面程序将会使用 Matplotlib 来展示 2017 年 7 月广州的最高气温和最低气温。
上面程序的前半部分代码用于从 csv 文件中读取 2017 年 7 月广州的气温数据,程序分别使用了 dates、highs 和 lows 三个 list 列表来保存日期、最高气温、最低气温。
程序的后半部分代码绘制了两条折线来显示最高气温和最低气温,其中第 31 行代码用于绘制最高气温,第 34 行代码用于绘制最低气温;第 37 行代码控制在两条折线之间填充颜色。程序也对坐标轴、图例进行了简单的设置。
运行上面程序,可以看到如图 1 所示的折线图。
图 1 2017 年7 月广州的气温折线图
程序也可以使用 Pygal 来统计 2017 年广州的天气汇总情况,比如统计出阴天、晴天、多云天和雨天各占多少天。程序会使用 csv 读取器读取 2017 年广州阴天、晴天、多云天和雨天共有多少天,然后将这些数据添加到 pygal.Pie 对象中即可绘制饼图。该程序的代码如下:
上面程序的前半部分代码也是用于从 csv 文件中读取 2017 年广州的天气数据,该程序只读取 csv 文件的数据行的第四列数据(天气描述),并使用 shades、sunnys、cloudys、rainys 分别保存阴天、晴天、多云天和雨天的数据。
上面程序中建了一个 pygal.Pie 对象,该对象就表示一个饼图。接下来向 pygal.Pie 对象添加数据。运行上面程序,可以生成如图 2 所示的饼图。
Python读取csv文件(详解版,看了无师自通)相关推荐
- python读取xls文件详解_python3解析excel文件
一.需要的依赖 : xlrd 二.代码 #coding=utf-8 import xlrd ''' 读取Excel每个sheet的第一列和第二列的值,拼接成json串,写入文件 ''' def res ...
- 用Python读取CSV文件的5种方式
典型的数据集stocks.csv: 一个股票的数据集,其实就是常见的表格数据.有股票代码,价格,日期,时间,价格变动和成交量.这个数据集其实就是一个表格数据,有自己的头部和身体. 第一招:简单的读取 ...
- 记录python读取csv文件
记录一下python读取文件 在做对比实验的过程当中,往往会遇到很多需要从.csv文件中读取数据的情况,因为做深度学习用的是python,所以下面记录一下使用python读取.csv文件的方法. 读取 ...
- python导入csv数据例子-使用python读取csv文件快速插入数据库的实例
如下所示: # -*- coding:utf-8 -*- # auth:ckf # date:20170703 import pandas as pd import cStringIO import ...
- python读取csv文件_python3.0读取csv文件
创建CSV文件,可以打开excel文件,创建表格以后,另存为csv文件(以逗号分隔的文件) 以文本格式打开,发现是用逗号分隔的 用python读取csv文件,首先要引入一个库:csv import c ...
- python csv文件复制时的编码问题_使用python读取CSV文件时的编码问题
尝试使用python读取CSV文件时遇到障碍. 更新:如果只想跳过字符或错误,可以打开文件,如下所示: with open(os.path.join(directory, file), 'r', en ...
- php读取大文件详解【OK】
在php中,对于文件的读取时,最快捷的方式莫过于使用一些诸如file.file_get_contents之类的函数,简简单单的几行代码就能很漂亮 的完成我们所需要的功能.但当所操作的文件是一个比较大的 ...
- python获取股指_用Python读取csv文件中的沪深300指数历史交易数据
保存路径:D:\python\用Python读取csv文件中的沪深300指数历史交易数据 程序名称:readcsvhs300.py: 数据名称:沪深300指数历史交易数据.csv: 开发环境:Win7 ...
- python读取csv文件路径正确但报错FileNotFoundError: [Errno 2] No such file or directory
项目场景: python读取csv文件路径正确但报错FileNotFoundError: [Errno 2] No such file or directory 问题描述: #储存调用表格.数据 #调 ...
- python 读取csv文件 和 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa8 in position问题...
python 读取csv文件,无法读取第一列的数据,不知道为什么.以后有时间再来研究 import os import csv import jsonfw = open("data_json ...
最新文章
- letswave7中文教程2:脑电数据预处理-通道位置分配
- linux版本更新,滚动更新与固定版本Linux之争
- 3DSlicer17:Logics
- 独家定制「炼丹贴纸」免费送,让你成为实验室最靓的仔
- 对vuex的一点理解
- 【转】我们到底为了什么钻研技术?
- Buying Feed, 2010 Nov (单调队列优化DP)
- mysql像plsql一样删除提交_MySQL学习-MySQL内置功能_事务操作
- 指定输出路径_新版Creo输入输出配置不用愁,果断收藏本文就对了
- 谷歌开源漏洞扫描器“海啸”,专为大型企业服务
- 解决Nvidia显卡控制面板闪退问题
- 用python写一个地铁线路图_python制作一线城市地铁运行动态图
- 刘毅5000词汇_不熟词汇整理_lesson_14 and part_4
- Ethereum Swarm bzz 升级
- avm2 pcode 学习笔记。高手勿笑
- html在360浏览器如何修改字体大小,360浏览器网页中字体大小如何修改
- 哈工大计算机学院专业成绩公示,哈工大2009计算机学院录取名单及初试复试成绩排名...
- FigDraw 21. SCI文章中绘图之三维散点图 (plot3D)
- 企业服务总线Enterprise service bus介绍
- Error: Protocol error, got “H“ as reply type byte
热门文章
- c语言车辆信息管理系统,用c语言编的车辆管理
- 人工智能开启甲骨文整理研究新范式
- GetPrivateProfileString C# 读取中文乱码问题
- Android开源的精美日历控件,热插拔设计的万能自定义UI,flutter调用原生sdk
- 神行千里 游戏蜂窝iOS战舰少女r远征辅助
- JVM中程序计数器的作用
- 腾讯需要的不是国行NS,它需要的是《动森》
- python代码直接关机_Python实现自动关机
- 深入解析 Raft 模块在 KaiwuDB 中的优化改造(下)
- 张文宇 小型微型计算机系统,车载式小型无人机气动力与动力特性试验测量方法及装置...