Python如何把字典写入到CSV文件的方法示例


Posted in Python onAugust 23, 2020

在实际数据分析过程中,我们分析用Python来处理数据(海量的数据),我们都是把这个数据转换为Python的对象的,比如最为常见的字典。

比如现在有几十万份数据(当然一般这么大的数据,会用到数据库的概念,不会去在CPU内存里面运行),我们不可能在Excel里面用函数进行计算一些值吧,这样是不现实的。
Excel只适合处理比较少的数据,具有方便快速的优势
那么我们假设是这么多数据,现在我要对这个数据进行解析,转换,最后数据分析,处理,然后写入数据到CSV文件,这样才达到要求,那么如何把数据字典写入到CSV文件了,我们就来看看。

就把这个项目和我们之前写过的一个成绩计算系统相关联,记得当时我们是把他写入为txt文件,里面是以字典的方式呈现的,那么我们现在来改进一下,就是为了把这份分析好的数据,呈现给其他人,比如现在要归档把这份数据存储下来。

首先我们建立了一个函数,专门写入CSV文件的这样一个函数

def csv_writer():

这里我们首先把我们这份数据的键(表头)给取出来,这里我们用到了一个遍历算法,那么有的小伙伴就疑问了,为什么我不手动加入,写入啊,也就几行我copy就好了,但是我们考虑一下如果键有几十个的话,我们直接copy是不是显得有点不自动化了,Python就是可以解决办公难题,别用一个小时的时间,你只需要1分钟就好。

a=[]
  dict=student_infos[0]
  for headers in sorted(dict.keys()):#把字典的键取出来
    a.append(headers)
  header=a#把列名给提取出来,用列表形式呈现

这里的header是一个列表

这里我打开了这个文件,准备写入,里面的参数我这里一一解释一下。

** a表示以“追加”的形式写入,如果是“w”的话,表示在写入之前会清空原文件中的数据
newline是数据之间不加空行
encoding='utf-8'表示编码格式为utf-8,如果不希望在excel中打开csv文件出现中文乱码的话,将其去掉不写也行。
为了不让pycharm里面的CSV文件乱码,我们这里用的参数编码为utf-8
而excel文件编码格式是gbk,两者不兼容,建议加上encoding='utf-8'参数。
如果不想excel中的csv文件乱码的话,建议将csv文件以记事本的方式打开,另存为ANSI格式即可。**

with open('成绩更新.csv', 'a', newline='', encoding='utf-8') as f:
    writer = csv.DictWriter(f, fieldnames=header) # 提前预览列名,当下面代码写入数据时,会将其一一对应。
    writer.writeheader() # 写入列名
    writer.writerows(student_infos) # 写入数据
  print("数据已经写入成功!!!")

这里的字典数据使我们之前内存空间里面已经解析处理好的数据,我这里最后一行直接用.writerows(字典)写入,至于表头,writeheader()写入就好

其实写入就是这么简单,也解决我们点点点的麻烦!

Python如何把字典写入到CSV文件的方法示例

Python如何把字典写入到CSV文件的方法示例

到此这篇关于Python如何把字典写入到CSV文件的方法示例的文章就介绍到这了,更多相关Python字典写入到CSV 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python使用mysqldb连接数据库操作方法示例详解
Dec 03 Python
使用Python3中的gettext模块翻译Python源码以支持多语言
Mar 31 Python
python web.py开发httpserver解决跨域问题实例解析
Feb 12 Python
Python爬虫之正则表达式的使用教程详解
Oct 25 Python
解决pycharm每次新建项目都要重新安装一些第三方库的问题
Jan 17 Python
python简单验证码识别的实现方法
May 10 Python
SELENIUM自动化模拟键盘快捷键操作实现解析
Oct 28 Python
python sorted方法和列表使用解析
Nov 18 Python
Python格式化输出--%s,%d,%f的代码解析
Apr 29 Python
Python爬虫爬取博客实现可视化过程解析
Jun 29 Python
Python 实现将某一列设置为str类型
Jul 14 Python
python 学习GCN图卷积神经网络
May 11 Python
Python tkinter界面实现历史天气查询的示例代码
Aug 23 #Python
套娃式文件夹如何通过Python批量处理
Aug 23 #Python
python进度条显示-tqmd模块的实现示例
Aug 23 #Python
基于python tkinter的点名小程序功能的实例代码
Aug 22 #Python
python+selenium 简易地疫情信息自动打卡签到功能的实现代码
Aug 22 #Python
python进度条显示之tqmd模块
Aug 22 #Python
python 常见的排序算法实现汇总
Aug 21 #Python
You might like
浅谈PHP 闭包特性在实际应用中的问题
2009/10/30 PHP
php获取数组长度的方法(有实例)
2013/10/27 PHP
CodeIgniter连贯操作的底层原理分析
2016/05/17 PHP
js中top的作用深入剖析
2014/03/04 Javascript
使用JavaScript获取电池状态的方法
2014/05/03 Javascript
将HTML格式的String转化为HTMLElement的实现方法
2014/08/07 Javascript
Node.js中防止错误导致的进程阻塞的方法
2016/08/11 Javascript
js HTML5 Canvas绘制转盘抽奖
2020/09/13 Javascript
Jquery Easyui分割按钮组件SplitButton使用详解(17)
2016/12/18 Javascript
Angular使用 ng-img-max 调整浏览器中的图片的示例代码
2017/08/17 Javascript
最实用的JS数组函数整理
2017/12/05 Javascript
JS随机数产生代码分享
2018/02/24 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
2019/09/06 Javascript
js 递归json树实现根据子id查父id的方法分析
2019/11/08 Javascript
Vue+ElementUI table实现表格分页
2019/12/14 Javascript
浅谈Vue.use到底是什么鬼
2020/01/21 Javascript
通过实例解析JavaScript for in及for of区别
2020/06/15 Javascript
vue+element-ui表格封装tag标签使用插槽
2020/06/18 Javascript
JavaScript实现网页计算器功能
2020/10/29 Javascript
python实现根据主机名字获得所有ip地址的方法
2015/06/28 Python
python实现将内容分行输出
2015/11/05 Python
Python实现文件信息进行合并实例代码
2018/01/17 Python
Django如何配置mysql数据库
2018/05/04 Python
python机器人运动范围问题的解答
2019/04/29 Python
Django bulk_create()、update()与数据库事务的效率对比分析
2020/05/15 Python
利用CSS3实现自定义滚动条代码分享
2016/08/18 HTML / CSS
Myprotein蛋白粉美国官网:欧洲畅销运动营养品牌
2016/11/15 全球购物
如何反序的迭代一个序列?how do I iterate over a sequence in reverse order
2012/02/04 面试题
汽车专业学生自我评价
2014/01/19 职场文书
先进个人事迹材料
2014/01/25 职场文书
《老山界》教学反思
2014/04/08 职场文书
寻找最美家庭活动方案
2014/08/20 职场文书
工作总结与自我评价
2014/09/18 职场文书
党员个人批评与自我批评
2014/10/14 职场文书
论文致谢词范文
2015/05/14 职场文书
证婚人致辞精选
2015/07/28 职场文书