python读写csv文件实例代码


Posted in Python onJuly 05, 2019

Python读取与写入CSV文件需要导入Python自带的CSV模块,然后通过CSV模块中的函数csv.reader()与csv.writer()来进行CSV文件的读取与写入。

写入CSV文件

import csv   # 需要import csv的文件包

out=open("aa.csv",'wb')     # 注意这里如果以‘w'的形式打开,每次写入的数据中间就会多一个空行,所以要用‘wb'

csv_write=csv.write(out,dialect='excel')

# 下面进行具体的内容写入

ss=['a',3]

csv_write.writerow(ss)   #这样ss里面的信息就被写入到aa.csv文件中了,而且是在两列中

                #这里如果需要写入多行,那么就采用循环进行循环输入就可以了

out.close()

读取CSV文件

import csv

out=open("aa.csv",'r')

read_csv=csv.reader(out,dialect='excel')

for line in read_csv:   #循环输出csv中的所有数据

  print line

out.close()

知识点扩展:

import csv

读文件

reader方法

with open('./data.csv', 'r') as f:
 reader = csv.reader(f)
 # python 2
 header = reader.next()
 # python 3x 使用python内置的next
 header = next(reader)
 #获取真正的数据
 for row in reader:
  print(row) # 打印每一行,列表类型,只能按位置索引

稍微介绍一下next(iterable, [default ])函数,它是python3x内置的,用于遍历可迭代对象的方法,其中iterable可以使字符串、列表、字典、元祖、集合等。若default给出,那么遍历到头时返回这个值,不然就抛异常。
这让我想到了字典的get()方法,它也有类似作用。比如,

# 如果dic里面没有key1这个键,那就返回我们指定的0
dic.get('key1', 0)

DictReader方法

写文件

跟读对应, 写操作也有两个方法

writer方法,适用列表的列表

with open('./data.csv', 'w') as f:
  header = ['col1', 'col2', ...]
  writer = csv.writer(f)
  writer.writeheader(header)
  for row in row_list:
   writer.writerow(row)
  # 或直接调用
  writer.writerows(row_list)

DictWriter方法,适用字典列表

with open('./data.csv', 'w') as f:
  dictwriter = csv.DictWriter(f)
  dictwriter.writeheader(dic_list[0].keys())
  for dic in dic_list:
   writer.writerow(dic)
  # 或者一次性写入,直接调用
   wrier.writerows(dic_list)

都是些比较基础的操作,在这里记录一下。如果你觉得有帮助,就更好了。

Python 相关文章推荐
Python pickle模块用法实例
Apr 14 Python
Python实现简单登录验证
Apr 13 Python
windows下python连接oracle数据库
Jun 07 Python
详谈python read readline readlines的区别
Sep 22 Python
tensorflow中next_batch的具体使用
Feb 02 Python
Python异常处理操作实例详解
May 10 Python
用vue.js组件模拟v-model指令实例方法
Jul 05 Python
解决Jupyter Notebook使用parser.parse_args出现错误问题
Apr 20 Python
keras模型保存为tensorflow的二进制模型方式
May 25 Python
python能在浏览器能运行吗
Jun 17 Python
python在linux环境下安装skimage的示例代码
Oct 14 Python
Python基础详解之邮件处理
Apr 28 Python
python暴力解压rar加密文件过程详解
Jul 05 #Python
Python 使用folium绘制leaflet地图的实现方法
Jul 05 #Python
Python 给定的经纬度标注在地图上的实现方法
Jul 05 #Python
python 自动轨迹绘制的实例代码
Jul 05 #Python
python实现ip代理池功能示例
Jul 05 #Python
解决yum对python依赖版本问题
Jul 05 #Python
python写入文件自动换行问题的方法
Jul 05 #Python
You might like
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
2013/05/07 PHP
php动态生成版权所有信息的方法
2015/03/24 PHP
33道php常见面试题及答案
2015/07/06 PHP
php使用str_shuffle()函数生成随机字符串的方法分析
2017/02/17 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
2018/04/27 PHP
javascript动画效果类封装代码
2007/08/28 Javascript
javascript 面向对象全新理练之继承与多态
2009/12/03 Javascript
js制作的鼠标悬浮时产生的下拉框效果
2012/10/27 Javascript
JavaScript语言核心数据类型和变量使用介绍
2013/08/23 Javascript
自己写的Javascript计算时间差函数
2013/10/28 Javascript
Jquery 动态生成表格示例代码
2013/12/24 Javascript
jquerymobile局部渲染的各种刷新方法小结
2014/03/05 Javascript
如何改进javascript代码的性能
2015/04/02 Javascript
JavaScript三种绑定事件方式及相互之间的区别分析
2017/01/10 Javascript
JS实现新建文件夹功能
2017/06/17 Javascript
详解Angular之constructor和ngOnInit差异及适用场景
2017/06/22 Javascript
浅析node Async异步处理模块用例分析及常用方法介绍
2017/11/17 Javascript
vue实现自定义日期组件功能的实例代码
2018/11/06 Javascript
vue计算属性+vue中class与style绑定(推荐)
2020/03/30 Javascript
[01:00:30]TFT vs VGJ.T Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
python实现的二叉树算法和kmp算法实例
2014/04/25 Python
在Python的Django框架中更新数据库数据的方法
2015/07/17 Python
Python实现的Excel文件读写类
2015/07/30 Python
Tensorflow之Saver的用法详解
2018/04/23 Python
解决python打不开文件(文件不存在)的问题
2019/02/18 Python
Python弹出输入框并获取输入值的实例
2019/06/18 Python
对PyQt5的输入对话框使用(QInputDialog)详解
2019/06/25 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
django商品分类及商品数据建模实例详解
2020/01/03 Python
Python openpyxl 插入折线图实例
2020/04/17 Python
python能开发游戏吗
2020/06/11 Python
python实现企业微信定时发送文本消息的实例代码
2020/11/25 Python
Html5实现移动端、PC端 刮刮卡效果
2016/06/30 HTML / CSS
乡镇平安建设汇报材料
2014/08/25 职场文书
2016年会领导致辞稿
2015/07/29 职场文书
Java Optional<Foo>转换成List<Bar>的实例方法
2021/06/20 Java/Android