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脚本在Appium库上对移动应用实现自动化测试
Apr 17 Python
Windows下安装python MySQLdb遇到的问题及解决方法
Mar 16 Python
详解python中的线程
Feb 10 Python
Python matplotlib通过plt.scatter画空心圆标记出特定的点方法
Dec 13 Python
对python的unittest架构公共参数token提取方法详解
Dec 17 Python
用Q-learning算法实现自动走迷宫机器人的方法示例
Jun 03 Python
Python序列对象与String类型内置方法详解
Oct 22 Python
Python计算不规则图形面积算法实现解析
Nov 22 Python
利用jupyter网页版本进行python函数查询方式
Apr 14 Python
基于Python脚本实现邮件报警功能
May 20 Python
Python中threading库实现线程锁与释放锁
May 17 Python
pytorch实现加载保存查看checkpoint文件
Jul 15 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中使用Oracle数据库(6)
2006/10/09 PHP
PHP统计数值数组中出现频率最多的10个数字的方法
2015/04/20 PHP
php探针使用原理和技巧讲解
2019/09/17 PHP
Thinkphp集成抖音SDK的实现方法
2020/04/28 PHP
JavaScript入门之基本函数详解
2011/10/21 Javascript
JavaScript 实现类的多种方法实例
2013/05/01 Javascript
Node.js中child_process实现多进程
2015/02/03 Javascript
jQuery构造函数init参数分析续
2015/05/13 Javascript
JQuery通过AJAX从后台获取信息显示在表格上并支持行选中
2015/09/15 Javascript
jQuery增加与删除table列的方法
2016/03/01 Javascript
JavaScript学习笔记之数组去重
2016/03/23 Javascript
js添加事件的通用方法推荐
2016/05/15 Javascript
BootStrap智能表单实战系列(七)验证的支持
2016/06/13 Javascript
Require.js的基本用法详解
2017/07/03 Javascript
NodeJS父进程与子进程资源共享原理与实现方法
2018/03/16 NodeJs
angular中子控制器向父控制器传值的实例
2018/10/08 Javascript
Node.js学习之内置模块fs用法示例
2020/01/22 Javascript
使用vue打包进行云服务器上传的问题
2020/03/02 Javascript
Python操作Excel之xlsx文件
2017/03/24 Python
详解python调度框架APScheduler使用
2017/03/28 Python
Python简单实现网页内容抓取功能示例
2018/06/07 Python
django多种支付、并发订单处理实例代码
2019/12/13 Python
Python @property装饰器原理解析
2020/01/22 Python
Python3+Selenium+Chrome实现自动填写WPS表单
2020/02/12 Python
解决python中import文件夹下面py文件报错问题
2020/06/01 Python
HTML5等待加载动画效果
2017/07/27 HTML / CSS
canvas画布实现手写签名效果的示例代码
2019/04/23 HTML / CSS
CHARLES & KEITH澳大利亚官网:新加坡时尚品牌
2019/01/22 全球购物
俄罗斯有趣和原创礼物网上商店:MagicMag
2019/08/01 全球购物
2014年高三毕业生自我评价
2014/01/11 职场文书
销售目标责任书
2014/07/23 职场文书
2014领导班子正风肃纪思想汇报
2014/09/18 职场文书
教师批评与自我批评材料
2014/10/16 职场文书
面试必问:圣杯布局和双飞翼布局的区别
2021/05/13 HTML / CSS
从np.random.normal()到正态分布的拟合操作
2021/06/02 Python
MySQL事务操作的四大特性以及并发事务问题
2022/04/12 MySQL