在python中读取和写入CSV文件详情


Posted in Python onJune 28, 2022

前言

CSV(Comma-Separated Values)即逗号分隔值,一种以逗号分隔按行存储的文本文件,所有的值都表现为字符串类型(注意:数字为字符串类型)。如果CSV中有中文,应以utf-8编码读写.

1.导入CSV库

python中对csv文件有自带的库可以使用,当我们要对csv文件进行读写的时候直接导入即可。

import csv

2.对CSV文件进行读写

2.1 用列表形式写入CSV文件

语法:csv.writer(f):
writer支持writerow(列表)单行写入,和writerows(嵌套列表)批量写入多行,无须手动保存。

import csv
header = ['name','age','QQ_num','wechat']
data = [['suliang','21','787991021','lxzy787991021']]
with open ('information.csv','w',encoding='utf-8',newline='') as fp:
    # 写
    writer =csv.writer(fp)
    # 设置第一行标题头
    writer.writerow(header)
    # 将数据写入
    writer.writerows(data)

结果:

在python中读取和写入CSV文件详情

注意:打开文件时应指定格式为w, 文本写入.
打开文件时,指定不自动添加新行newline=‘’,否则每写入一行就或多一个空行。

2.2 用列表形式读取CSV文件

语法:csv.reader(f, delimiter=‘,’)
reader为生成器,每次读取一行,每行数据为列表格式,可以通过delimiter参数指定分隔符

import csv

with open('information.csv',encoding='utf-8')as fp:
    reader = csv.reader(fp)
    # 获取标题
    header = next(reader)
    print(header)
    # 遍历数据
    for i in reader:
        print(i)

结果:

在python中读取和写入CSV文件详情

读取文件时文件路径务必要写对,不确定时可写绝对路径。要获取csv的内容则需要遍历再输出。

2.3 用字典形式写入csv文件

语法:csv.DicWriter(f):
写入时可使用writeheader()写入标题,然后使用writerow(字典格式数据行)或writerows(多行数据)

import csv
header = ['name','age']
data = [{'name':'suliang','age':'21'},
        {'name':'xiaoming','age':'22'},
        {'name':'xiaohu','age':'25'}]
with open ('information.csv','w',encoding='utf-8',newline='') as fp:
    # 写
    writer =csv.DictWriter(fp,header)
    # 写入标题
    writer.writeheader()
    # 将数据写入
    writer.writerows(data)

结果:

在python中读取和写入CSV文件详情

2.4 用字典形式读取csv文件

语法:csv.DicReader(f, delimiter=‘,’)
直接将标题和每一列数据组装成有序字典(OrderedDict)格式,无须再单独读取标题行

import csv
with open('information.csv',encoding='utf-8')as fp:
    reader = csv.DictReader(fp)
    for i in reader
        print(i)

结果:

在python中读取和写入CSV文件详情

附:csv读写的模式

  • r:以读方式打开文件,可读取文件信息
  • w: 已写方式打开文件,可向文件写入信息。如文件存在,则清空,再写入
  • a:以追加模式打开文件,打开文件可指针移至末尾,文件不存在则创建
  • r+:以读写方式打开文件,可对文件进行读和写操作
  • w+:消除文件内容,以读写方式打开文件
  • a+:以读写方式打开文件,文件指针移至末尾
  • b:以二进制打开文件

结语

到此这篇关于在python中读取和写入CSV文件详情的文章就介绍到这了,更多相关python读写CSV文件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Python 相关文章推荐
浅析Python的web.py框架中url的设定方法
Jul 11 Python
python中requests库session对象的妙用详解
Oct 30 Python
python自动裁剪图像代码分享
Nov 25 Python
Python cookbook(数据结构与算法)筛选及提取序列中元素的方法
Mar 19 Python
用Python写一个模拟qq聊天小程序的代码实例
Mar 06 Python
Python中Numpy mat的使用详解
May 24 Python
Django 开发环境配置过程详解
Jul 18 Python
Django为窗体加上防机器人的验证码功能过程解析
Aug 14 Python
Python实现RGB与HSI颜色空间的互换方式
Nov 27 Python
python实现将json多行数据传入到mysql中使用
Dec 31 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
Jul 14 Python
Python中bisect的用法及示例详解
Jul 20 Python
python数字图像处理之图像的批量处理
如何利用python实现Simhash算法
Jun 28 #Python
python数字图像处理:图像的绘制
python数字图像处理数据类型及颜色空间转换
python数据分析之单因素分析线性拟合及地理编码
python可视化分析绘制带趋势线的散点图和边缘直方图
基于Python编写一个监控CPU的应用系统
You might like
网页上facebook分享功能具体实现
2014/01/26 PHP
PIGCMS 如何关闭聊天机器人
2015/02/12 PHP
php查询mysql大量数据造成内存不足的解决方法
2015/03/04 PHP
安装docker和docker-compose实例详解
2019/07/30 PHP
jQuery入门问答 整理的几个常见的初学者问题
2010/02/22 Javascript
jQuery 自定义函数写法分享
2012/03/30 Javascript
JavaScript中操作字符串之localeCompare()方法的使用
2015/06/06 Javascript
浅谈Jquery核心函数
2015/06/18 Javascript
值得分享和收藏的Bootstrap学习教程
2016/05/12 Javascript
微信小程序 引用其他js文件实现代码
2017/02/22 Javascript
基于jQuery实现的单行公告活动轮播效果
2017/08/23 jQuery
jQuery Datatable 多个查询条件自定义提交事件(推荐)
2017/08/24 jQuery
nginx部署访问vue-cli搭建的项目的方法
2018/02/12 Javascript
Javasript设计模式之链式调用详解
2018/04/26 Javascript
vue裁切预览组件功能的实现步骤
2018/05/04 Javascript
Vue.js最佳实践(五招助你成为vuejs大师)
2018/05/04 Javascript
Vue中使用的EventBus有生命周期
2018/07/12 Javascript
bootstrap模态框弹出和隐藏,动态改变中间内容的实例
2018/08/10 Javascript
Vue中qs插件的使用详解
2020/02/07 Javascript
[37:02]OG vs INfamous 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
python实现的各种排序算法代码
2013/03/04 Python
python益智游戏计算汉诺塔问题示例
2014/03/05 Python
DJANGO-ALLAUTH社交用户系统的安装配置
2014/11/18 Python
python中管道用法入门实例
2015/06/04 Python
Django使用httpresponse返回用户头像实例代码
2018/01/26 Python
python过滤中英文标点符号的实例代码
2019/07/15 Python
Python 根据日志级别打印不同颜色的日志的方法示例
2019/08/08 Python
Centos7 下安装最新的python3.8
2019/10/28 Python
应届毕业生的自我鉴定
2013/11/13 职场文书
信息科学与技术专业求职信范文
2014/02/20 职场文书
公司搬迁通知
2015/04/20 职场文书
驾驶员安全责任协议书
2016/03/22 职场文书
HR必备:销售经理聘用合同范本
2019/08/21 职场文书
变长双向rnn的正确使用姿势教学
2021/05/31 Python
python实现股票历史数据可视化分析案例
2021/06/10 Python
Vue router配置与使用分析讲解
2022/12/24 Vue.js