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语言中的按位运算符
Nov 26 Python
python进阶教程之模块(module)介绍
Aug 30 Python
Python Web框架Flask中使用新浪SAE云存储实例
Feb 08 Python
Python中使用partial改变方法默认参数实例
Apr 28 Python
微信跳一跳小游戏python脚本
Jan 05 Python
python写一个md5解密器示例
Feb 23 Python
详解Python中pandas的安装操作说明(傻瓜版)
Apr 08 Python
python 使用opencv 把视频分割成图片示例
Dec 12 Python
python中的itertools的使用详解
Jan 13 Python
解决pyCharm中 module 调用失败的问题
Feb 12 Python
python 元组的使用方法
Jun 09 Python
Python操作PostgreSql数据库的方法(基本的增删改查)
Dec 29 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
php4的session功能评述(二)
2006/10/09 PHP
php at(@)符号的用法简介
2009/07/11 PHP
phpexcel导出excel的颜色和网页中的颜色显示不一致
2012/12/11 PHP
php缓冲输出实例分析
2015/01/05 PHP
详解PHP swoole process的使用方法
2017/08/26 PHP
Laravel5.1 框架Request请求操作常见用法实例分析
2020/01/04 PHP
jQuery UI 应用不同Theme的办法
2010/09/12 Javascript
javascript获得服务器端控件的ID的实现代码
2011/12/28 Javascript
node.js中的console.assert方法使用说明
2014/12/10 Javascript
AngularJS内建服务$location及其功能详解
2016/07/01 Javascript
Bootstrap布局之栅格系统学习笔记
2017/05/04 Javascript
vue-cli中的webpack配置详解
2017/09/25 Javascript
Angular js 实现添加用户、修改密码、敏感字、下拉菜单的综合操作方法
2017/10/24 Javascript
基于vue2实现上拉加载功能
2017/11/28 Javascript
layui 上传插件 带预览 非自动上传功能的实例(非常实用)
2019/09/23 Javascript
JS pushlet XMLAdapter适配器用法案例解析
2020/10/16 Javascript
JS如何调用WebAssembly编译出来的.wasm文件
2020/11/05 Javascript
Vue3 响应式侦听与计算的实现
2020/11/11 Javascript
python获取目录下所有文件的方法
2015/06/01 Python
Python callable()函数用法实例分析
2018/03/17 Python
python实现猜单词小游戏
2020/05/22 Python
解决Python3中的中文字符编码的问题
2018/07/18 Python
python实现WebSocket服务端过程解析
2019/10/18 Python
python正则表达式匹配IP代码实例
2019/12/28 Python
Pycharm生成可执行文件.exe的实现方法
2020/06/02 Python
idea2020手动安装python插件的实现方法
2020/07/17 Python
python matlab库简单用法讲解
2020/12/31 Python
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
兰蔻英国官网:Lancome英国
2019/04/30 全球购物
OnePlus加拿大官网:中国国际化手机品牌
2020/10/13 全球购物
为什么要优先使用同步代码块而不是同步方法?
2013/01/30 面试题
人力资源部经理助理岗位职责
2014/03/04 职场文书
伦敦奥运会口号
2014/06/13 职场文书
2014年幼儿园教研工作总结
2014/12/04 职场文书
python中的3种定义类方法
2021/11/27 Python
python多线程方法详解
2022/01/18 Python