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

所属分类: 脚本专栏 / python 阅读数: 921
收藏 0 赞 0 分享

在实际数据分析过程中,我们分析用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调用C/C++的方法解析

这篇文章主要介绍了Python调用C/C++的方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

学习Python爬虫的几点建议

这篇文章主要介绍了学习Python爬虫的几点建议,对新手学习爬虫有很大的帮助,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

Python创建临时文件和文件夹

这篇文章主要介绍了Python如何创建临时文件和文件夹,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

浅析Python 序列化与反序列化

这篇文章主要介绍了Python 序列化与反序列化的相关资料,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

8种常用的Python工具

这篇文章主要介绍了8种常用的Python工具,帮助大家更好的学习Python,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

python爬虫使用requests发送post请求示例详解

这篇文章主要介绍了python爬虫使用requests发送post请求示例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Python结合Window计划任务监测邮件的示例代码

这篇文章主要介绍了Python结合Window计划任务监测邮件的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Python用来做Web开发的优势有哪些

这篇文章主要介绍了Python用来做Web开发的优势有哪些,文中讲解非常细致,帮助大家更好的理解和学习Python,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

如何解决pycharm调试报错的问题

在本篇内容里小编给大家整理的是一篇关于如何解决pycharm调试报错的问题文章,需要的朋友们可以学习参考下。
收藏 0 赞 0 分享

基于logstash实现日志文件同步elasticsearch

这篇文章主要介绍了基于logstash实现日志文件同步elasticsearch,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多