在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 相关文章推荐
PHP webshell检查工具 python实现代码
Sep 15 Python
python实现代理服务功能实例
Nov 15 Python
python实现封装得到virustotal扫描结果
Oct 05 Python
Python中逗号的三种作用实例分析
Jun 08 Python
python实现员工管理系统
Jan 11 Python
Python实现压缩文件夹与解压缩zip文件的方法
Sep 01 Python
Python3 chardet模块查看编码格式的例子
Aug 14 Python
tesserocr与pytesseract模块的使用方法解析
Aug 30 Python
Python定时任务APScheduler安装及使用解析
Aug 07 Python
python switch 实现多分支选择功能
Dec 21 Python
python 实现的截屏工具
May 08 Python
Django drf请求模块源码解析
Jun 08 Python
python数字图像处理之图像的批量处理
如何利用python实现Simhash算法
Jun 28 #Python
python数字图像处理:图像的绘制
python数字图像处理数据类型及颜色空间转换
python数据分析之单因素分析线性拟合及地理编码
python可视化分析绘制带趋势线的散点图和边缘直方图
基于Python编写一个监控CPU的应用系统
You might like
php继承中方法重载(覆盖)的应用场合
2015/02/09 PHP
PHP定时任务获取微信access_token的方法
2016/10/10 PHP
IE event.srcElement和FF event.target 功能比较
2010/03/01 Javascript
指定位置如果有图片显示图片,无图片显示广告的JS
2010/06/05 Javascript
浅析jquery的作用与优势
2013/12/02 Javascript
解析JavaScript中instanceof对于不同的构造器或许都返回true
2013/12/03 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
JavaScript 函数模式详解及示例
2016/09/07 Javascript
Webpack执行命令参数详解
2017/06/17 Javascript
jQuery结合jQuery.cookie.js插件实现换肤功能示例
2017/10/14 jQuery
vue项目实战总结篇
2018/02/11 Javascript
Vue中使用canvas方法总结
2019/02/12 Javascript
微信小程序授权登陆及每次检查是否授权实例代码
2019/09/18 Javascript
vue自定义标签和单页面多路由的实现代码
2020/05/03 Javascript
[01:20:37]FNATIC vs NIP 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
python3.0 字典key排序
2008/12/24 Python
Python处理Excel文件实例代码
2017/06/20 Python
Python+matplotlib+numpy绘制精美的条形统计图
2018/01/02 Python
python正则表达式及使用正则表达式的例子
2018/01/22 Python
Python实现的将文件每一列写入列表功能示例【测试可用】
2018/03/19 Python
python如何读写json数据
2018/03/21 Python
python中in在list和dict中查找效率的对比分析
2018/05/04 Python
python实现图片转字符小工具
2019/04/30 Python
华为2019校招笔试题之处理字符串(python版)
2019/06/25 Python
Python列表(list)所有元素的同一操作解析
2019/08/01 Python
使用selenium和pyquery爬取京东商品列表过程解析
2019/08/15 Python
python实现将列表中各个值快速赋值给多个变量
2020/04/02 Python
Cotton On美国网站:澳洲时装连锁品牌
2016/10/25 全球购物
英国香水店:The Perfume Shop
2017/03/27 全球购物
英国度假别墅预订:Sykes Cottages
2017/06/12 全球购物
医院护士专业个人的求职信
2013/12/09 职场文书
编辑找工作求职信分享
2014/01/03 职场文书
养牛场项目建议书
2014/05/13 职场文书
纪念九一八事变演讲稿:忘记意味着背叛
2014/09/14 职场文书
《鸟的天堂》教学反思
2016/02/19 职场文书
vue实现水波涟漪效果的点击反馈指令
2021/05/31 Vue.js