python读写csv文件并增加行列的实例代码


Posted in Python onAugust 01, 2019

python读写csv文件并增加行列,具体代码如下所示:

# -*- coding: utf-8 -*-
"""
Created on Thu Aug 17 11:28:17 2017
@author: Shawn Yuen
"""
import csv
d = list(range(38685))
with open('./kinetics_test.csv') as f1:
 f_csv = csv.DictReader(f1)
 for i, row in enumerate(f_csv):
 #print(row)
 key1 = 'label'
 value1 = 'test'
 row[key1] = value1
 key2 = 'is_cc'
 value2 = '0'
 row[key2] = value2
 d[i] = row
f1.close()
headers = ['label', 'youtube_id', 'time_start', 'time_end', 'split', 'is_cc']
with open('./kinetics_test_new_.csv', 'w') as f:
 f_csv = csv.DictWriter(f, headers)
 f_csv.writeheader()
 f_csv.writerows(d)
f.close()
with open('./kinetics_test_new_.csv','rt') as fin:
 lines=''
 for line in fin:
 if line!='\n':
  lines+=line
with open('./kinetics_test_new.csv','wt')as fout:
 fout.write(lines)

为了下载test数据,

方法一: 用Excel打开csv文件,手动添加label和is_cc;

方法二: 利用python里面的csv模块改写。

生成的csv文件中奇怪的多了一些空行,然后找到解决方法,见参考资料。

python 定义给定初值或长度的list

知识点扩展:

python写入csv文件的几种方法总结

最常用的一种方法,利用pandas包

import pandas as pd
#任意的多组列表
a = [1,2,3]
 b = [4,5,6] 
#字典中的key值即为csv中列名
dataframe = pd.DataFrame({'a_name':a,'b_name':b})
#将DataFrame存储为csv,index表示是否显示行名,default=True
 dataframe.to_csv("test.csv",index=False,sep=',')
 a_name b_name
 0 1 4
 1 2 5
 2 3 6

同样pandas也提供简单的读csv方法

import pandas as pd
 data = pd.read_csv('test.csv')

会得到一个DataFrame类型的data,不熟悉处理方法可以参考pandas十分钟入门

另一种方法用csv包,一行一行写入

import csv
#python2可以用file替代open
 with open("test.csv","w") as csvfile: 
 writer = csv.writer(csvfile)
 #先写入columns_name
 writer.writerow(["index","a_name","b_name"])
 #写入多行用writerows
 writer.writerows([[0,1,3],[1,2,3],[2,3,4]])

 index a_name b_name
 0 1 3
 1 2 3
 2 3 4

读取csv文件用reader

import csv
 with open("test.csv","r") as csvfile:
 reader = csv.reader(csvfile)
 #这里不需要readlines
 for line in reader:
  print line

总结

以上所述是小编给大家介绍的python读写csv文件并增加行列的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python与Redis的连接教程
Apr 22 Python
Python排序搜索基本算法之选择排序实例分析
Dec 09 Python
Python3利用Dlib19.7实现摄像头人脸识别的方法
May 11 Python
详解Python 解压缩文件
Apr 09 Python
详解Python下载图片并保存本地的两种方式
May 15 Python
详解python调用cmd命令三种方法
Jul 08 Python
Python 使用 docopt 解析json参数文件过程讲解
Aug 13 Python
keras中的loss、optimizer、metrics用法
Jun 15 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
Sep 23 Python
一篇文章教你用python画动态爱心表白
Nov 22 Python
python 如何读、写、解析CSV文件
Mar 03 Python
python-opencv 中值滤波{cv2.medianBlur(src, ksize)}的用法
Jun 05 Python
Flask框架重定向,错误显示,Responses响应及Sessions会话操作示例
Aug 01 #Python
python对csv文件追加写入列的方法
Aug 01 #Python
Django Aggregation聚合使用方法解析
Aug 01 #Python
Flask教程之重定向与错误处理实例分析
Aug 01 #Python
python gdal安装与简单使用
Aug 01 #Python
Django模型修改及数据迁移实现解析
Aug 01 #Python
Django 大文件下载实现过程解析
Aug 01 #Python
You might like
PHP 内存缓存加速功能memcached安装与用法
2009/09/03 PHP
PHP 文件编程综合案例-文件上传的实现
2013/07/03 PHP
PHP设计模式之装饰者模式代码实例
2015/05/11 PHP
PHP 9 大缓存技术总结
2015/09/17 PHP
php实现Mysql简易操作类
2015/10/11 PHP
php微信公众平台开发(三)订阅事件处理
2016/12/06 PHP
php的laravel框架快速集成微信登录的方法
2016/12/12 PHP
详解使用php-cs-fixer格式化代码
2020/09/16 PHP
仿jQuery的siblings效果的js代码
2011/08/09 Javascript
JavaScript中变量提升 Hoisting
2012/07/03 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
2012/10/11 Javascript
jquery简单实现带渐显效果的选项卡菜单代码
2015/09/01 Javascript
JS实现鼠标框选效果完整实例
2016/06/20 Javascript
jquery对Json的各种遍历方法总结(必看篇)
2016/09/29 Javascript
微信小程序商城项目之侧栏分类效果(1)
2017/04/17 Javascript
简单谈谈vue的过渡动画(推荐)
2017/10/11 Javascript
JavaScript实现职责链模式概述
2018/01/25 Javascript
微信小程序progress组件使用详解
2018/01/31 Javascript
nodejs搭建本地服务器轻松解决跨域问题
2018/03/21 NodeJs
解决vue axios的封装 请求状态的错误提示问题
2018/09/25 Javascript
webpack开发环境和生产环境的深入理解
2018/11/08 Javascript
深入理解使用Vue实现Context-Menu的思考与总结
2019/03/09 Javascript
[01:01:18]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#2COL VS LGD
2016/03/03 DOTA
介绍Python的Urllib库的一些高级用法
2015/04/30 Python
QT5 Designer 打不开的问题及解决方法
2020/08/20 Python
简单的命令查看安装的python版本号
2020/08/28 Python
Django后端按照日期查询的方法教程
2021/02/28 Python
HTML5 图片预加载的示例代码
2020/03/25 HTML / CSS
Bluebella德国官网:英国性感内衣和睡衣品牌
2019/11/08 全球购物
实习生单位鉴定意见
2013/12/04 职场文书
银行员工职业规划范文
2014/01/21 职场文书
岗位说明书范文
2014/05/07 职场文书
初中成绩单评语
2014/12/29 职场文书
保卫工作个人总结
2015/03/03 职场文书
承兑汇票延期证明
2015/06/23 职场文书
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
2022/04/29 Servers