在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之不要红头文件(2)
Sep 28 Python
Python实现图像几何变换
Jul 06 Python
python中Matplotlib实现绘制3D图的示例代码
Sep 04 Python
用matplotlib画等高线图详解
Dec 14 Python
1 行 Python 代码快速实现 FTP 服务器
Jan 25 Python
Selenium(Python web测试工具)基本用法详解
Aug 10 Python
python 实现在一张图中绘制一个小的子图方法
Jul 07 Python
Python编写打字训练小程序
Sep 26 Python
Python Numpy 自然数填充数组的实现
Nov 28 Python
Python调用钉钉自定义机器人的实现
Jan 03 Python
通过python实现windows桌面截图代码实例
Jan 17 Python
浅谈Python中range与Numpy中arange的比较
Mar 11 Python
python数字图像处理之图像的批量处理
如何利用python实现Simhash算法
Jun 28 #Python
python数字图像处理:图像的绘制
python数字图像处理数据类型及颜色空间转换
python数据分析之单因素分析线性拟合及地理编码
python可视化分析绘制带趋势线的散点图和边缘直方图
基于Python编写一个监控CPU的应用系统
You might like
php银联网页支付实现方法
2015/03/04 PHP
jquery+thinkphp实现跨域抓取数据的方法
2016/10/15 PHP
JScript 脚本实现文件下载 一般用于下载木马
2009/10/29 Javascript
Egret引擎开发指南之编译项目
2014/09/03 Javascript
Thinkphp模板没有解析直接原样输出的解决方法
2014/10/31 Javascript
JavaScript中使用Object.prototype.toString判断是否为数组
2015/04/01 Javascript
JavaScript如何实现跨域请求
2016/08/05 Javascript
JavaScript 函数节流详解及方法总结
2017/02/09 Javascript
JS实现的随机排序功能算法示例
2017/06/09 Javascript
详解JS中的this、apply、call、bind(经典面试题)
2017/09/19 Javascript
修改node.js默认的npm安装目录实例
2018/05/15 Javascript
vue通过点击事件读取音频文件的方法
2018/05/30 Javascript
详解JS实现系统登录页的登录和验证
2019/04/29 Javascript
vue+element表格导出为Excel文件
2019/09/26 Javascript
如何用vue-cli3脚手架搭建一个基于ts的基础脚手架的方法
2019/12/12 Javascript
基于vue中的scoped坑点解说
2020/09/04 Javascript
python自动格式化json文件的方法
2015/03/11 Python
python实现简单登陆系统
2018/10/18 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
2019/02/13 Python
python学习——内置函数、数据结构、标准库的技巧(推荐)
2019/04/18 Python
520使用Python实现“我爱你”表白
2020/05/20 Python
对Keras中predict()方法和predict_classes()方法的区别说明
2020/06/09 Python
IE下实现类似CSS3 text-shadow文字阴影的几种方法
2011/05/11 HTML / CSS
HTML5实现预览本地图片
2016/02/17 HTML / CSS
Expedia马来西亚旅游网站:廉价酒店,度假村和航班预订
2016/07/26 全球购物
建筑学推荐信
2013/11/03 职场文书
2015年幼儿园元旦亲子活动方案
2014/12/09 职场文书
财务统计员岗位职责
2015/04/14 职场文书
庆七一活动简报
2015/07/20 职场文书
《窃读记》教学反思
2016/02/18 职场文书
导游词之山东八大关
2019/12/18 职场文书
导游词之昭君岛
2020/01/17 职场文书
Python 把两层列表展开平铺成一层(5种实现方式)
2021/04/07 Python
Spring Data JPA使用JPQL与原生SQL进行查询的操作
2021/06/15 Java/Android
Oracle删除归档日志及添加定时任务
2022/06/28 Oracle
win11电脑关机鼠标灯还亮怎么解决? win11关机后鼠标灯还亮解决方法
2023/01/09 数码科技