Python用csv写入文件_消除空余行的方法


Posted in Python onJuly 06, 2018

只做简单地记录,方便一下使用!python关于csv模块的介绍网上有很多资料,这里就不在赘诉。直接给出代码和解释。

数据:

Symbol,Price,Date,Time,Change,Volume
"AA",39.48,"6/11/2007","9:36am",-0.18,181800
"AIG",71.38,"6/11/2007","9:36am",-0.15,195500
"AXP",62.58,"6/11/2007","9:36am",-0.46,935000
"BA",98.31,"6/11/2007","9:36am",+0.12,104800
"C",53.08,"6/11/2007","9:36am",-0.25,360900
"CAT",78.29,"6/11/2007","9:36am",-0.23,225400

一、csv读入文件消除空余行

import csv
#@param: wb:覆盖原来的文件内容
#@param: ab+:追加文件内容
 
with open('input.csv','wb') as f: 
 f_csv = csv.writer(f)
 f_csv.writerow(headers)  #读入项目标签名
#  f_csv.writerows(rows)
 id = 1 
 for row in rows:
  row = list(row)   #转换成list,因为原始是tupple
  row.insert(0,id)   #根据特定的题目要求!
  f_csv.writerow(row)
  id += 1

二、读取为一个元组的序列

import csv
with open('stocks.csv') as f:
 f_csv = csv.reader(f)
 headers = next(f_csv)
 for row in f_csv:
  # Process row
  ...

在上面的代码中, row 会是一个列表。因此,为了访问某个字段,你需要使用下标,如 row[0] 访问Symbol, row[4] 访问Change。

三、将数据读取到一个字典序列中

mport csv
with open('stocks.csv') as f:
 f_csv = csv.DictReader(f)
 for row in f_csv:
  # process row
  ...

在这个版本中,你可以使用列名去访问每一行的数据了。比如,row['Symbol'] 或者 row['Change']。

四、写入数据

为了写入CSV数据,你仍然可以使用csv模块,不过这时候先创建一个 writer 对象。例如:

rows = [('AA', 39.48, '6/11/2007', '9:36am', -0.18, 181800),
   ('AIG', 71.38, '6/11/2007', '9:36am', -0.15, 195500),
   ('AXP', 62.58, '6/11/2007', '9:36am', -0.46, 935000),
  ]
 
with open('stocks.csv','w') as f:
 f_csv = csv.writer(f)
 f_csv.writerow(headers)
 f_csv.writerows(rows)

如果你有一个字典序列的数据,可以像这样做:

headers = ['Symbol', 'Price', 'Date', 'Time', 'Change', 'Volume']
rows = [{'Symbol':'AA', 'Price':39.48, 'Date':'6/11/2007',
  'Time':'9:36am', 'Change':-0.18, 'Volume':181800},
  {'Symbol':'AIG', 'Price': 71.38, 'Date':'6/11/2007',
  'Time':'9:36am', 'Change':-0.15, 'Volume': 195500},
  {'Symbol':'AXP', 'Price': 62.58, 'Date':'6/11/2007',
  'Time':'9:36am', 'Change':-0.46, 'Volume': 935000},
  ]
 
with open('stocks.csv','w') as f:
 f_csv = csv.DictWriter(f, headers)
 f_csv.writeheader()
 f_csv.writerows(rows)

写入数据最麻烦的问题就是无缘无故的每行数据结束后都会自动多出一个空行的问题。这就是写这篇文章的意义,处理方法就是《一》中的介绍的内容。

以上这篇Python用csv写入文件_消除空余行的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基础教程之popen函数操作其它程序的输入和输出示例
Feb 10 Python
python 字典(dict)遍历的四种方法性能测试报告
Jun 25 Python
pygame学习笔记(2):画点的三种方法和动画实例
Apr 15 Python
基于Python代码编辑器的选用(详解)
Sep 13 Python
python smtplib模块自动收发邮件功能(一)
May 22 Python
Python实现的微信好友数据分析功能示例
Jun 21 Python
Python从数据库读取大量数据批量写入文件的方法
Dec 10 Python
python实现学员管理系统
Feb 26 Python
Tornado实现多进程/多线程的HTTP服务详解
Jul 25 Python
Python列表元素常见操作简单示例
Oct 25 Python
Python selenium自动化测试模型图解
Apr 15 Python
tensorflow安装成功import tensorflow 出现问题
Apr 16 Python
Python实现string字符串连接的方法总结【8种方式】
Jul 06 #Python
python 读取目录下csv文件并绘制曲线v111的方法
Jul 06 #Python
Python 爬虫之Beautiful Soup模块使用指南
Jul 05 #Python
Python实现模拟登录网易邮箱的方法示例
Jul 05 #Python
python selenium自动上传有赞单号的操作方法
Jul 05 #Python
python实现爬取图书封面
Jul 05 #Python
Python定义二叉树及4种遍历方法实例详解
Jul 05 #Python
You might like
php-cli简介(不会Shell语言一样用Shell)
2013/06/03 PHP
php中函数前加&符号的作用分解
2014/07/08 PHP
PHP微信开发之模板消息回复
2016/06/24 PHP
PHP入门教程之图像处理技巧分析
2016/09/11 PHP
详解PHP序列化和反序列化原理
2018/01/15 PHP
可兼容php5与php7的cURL文件上传功能实例分析
2018/05/11 PHP
TNC vs RR BO3 第一场 2.14
2021/03/10 DOTA
AJAX架构之Dojo篇
2007/04/10 Javascript
详解jquery中$.ajax方法提交表单
2014/11/03 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
浅谈Javascript线程及定时机制
2015/07/02 Javascript
jquery使用ul模拟select实现表单美化的方法
2015/08/18 Javascript
js实现文字滚动效果
2016/03/03 Javascript
Javascript表单特效之十大常用原理性样例代码大总结
2016/07/12 Javascript
NodeJS整合银联网关支付(DEMO)
2016/11/09 NodeJs
Angularjs使用ng-repeat中$even和$odd属性的注意事项
2016/12/31 Javascript
angular 服务的单例模式(依赖注入模式下)详解
2018/10/22 Javascript
浅谈vue.use()方法从源码到使用
2019/05/12 Javascript
了解javascript中let和var及const关键字的区别
2019/05/24 Javascript
JS自定义滚动条效果
2020/03/13 Javascript
Nuxt的路由动画效果案例
2020/11/06 Javascript
Python实现对PPT文件进行截图操作的方法
2015/04/28 Python
python检查URL是否正常访问的小技巧
2017/02/25 Python
python非递归全排列实现方法
2017/04/10 Python
tensorflow中next_batch的具体使用
2018/02/02 Python
解决python2 绘图title,xlabel,ylabel出现中文乱码的问题
2019/01/29 Python
基于PyInstaller各参数的含义说明
2021/03/04 Python
IGK Hair官网:喷雾、洗发水、护发素等
2020/11/03 全球购物
MYSQL相比于其他数据库有哪些特点
2013/07/19 面试题
后勤人员自我评价怎么写
2013/09/19 职场文书
如何掌握自荐信格式呢
2013/11/19 职场文书
2014年银行客户经理工作总结
2014/11/12 职场文书
2014年便民服务中心工作总结
2014/12/20 职场文书
幼儿园六一儿童节活动总结
2015/02/10 职场文书
java如何实现socket连接方法封装
2021/09/25 Java/Android
hive数据仓库新增字段方法
2022/06/25 数据库