当前位置: 首页 > news >正文

python csv模块读取/写入csv文件

文章目录

  • 一、准备一个csv文件(test.csv)
  • 二、读取csv文件
    • 输出整个文件的数据
    • 输出具体信息
    • 输出所有的年龄
    • 修改tom的年龄为20
    • 增加一列信息
  • 三、写入csv文件
  • 四、完整代码
  • 五、参考文章


一、准备一个csv文件(test.csv)

在这里插入图片描述

二、读取csv文件

输出整个文件的数据

import csv
with open('test.csv', 'r', encoding='utf-8') as f:
    data = [row for row in csv.DictReader(f)]
    print(data)

在这里插入图片描述
打印出来的值是一个列表里面嵌套了字典

输出具体信息

print(data[0]["age"])	#输出lili的年龄,0代表第一行

在这里插入图片描述

输出所有的年龄

with open('test.csv', 'r', encoding='utf-8') as f:
    data = [row for row in csv.DictReader(f)]
    for i in range(len(data)):
        print(data[i]["age"])

在这里插入图片描述

修改tom的年龄为20

data[1]["age"] = 20
print(data)

在这里插入图片描述

增加一列信息

data[0]["phone"] = "123456"
data[1]["phone"] = "456789"
print(data)

在这里插入图片描述

三、写入csv文件

header = data[0].keys()     # 获取表头
with open('test_output.csv', 'w', encoding='utf-8', newline='') as f:
    writer = csv.DictWriter(f, fieldnames=header)
    writer.writeheader()    # 写入表头
    writer.writerows(data)  # 写入数据

在这里插入图片描述

四、完整代码

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import csv

with open('test.csv', 'r', encoding='utf-8') as f:
    data = [row for row in csv.DictReader(f)]
    data[1]["age"] = 20
    data[0]["phone"] = "123456"
    data[1]["phone"] = "456789"

header = data[0].keys()     # 获取表头
with open('test_output.csv', 'w', encoding='utf-8', newline='') as f:
    writer = csv.DictWriter(f, fieldnames=header)
    writer.writeheader()    # 写入表头
    writer.writerows(data)  # 写入数据

五、参考文章

Python 修改CSV文件实例详解

相关文章:

  • Nacos学习笔记 (5)Nacos整合SpringBoot流程
  • 在服务器安装jupyter并在本地访问
  • MySQL索引-索引的优势和劣势
  • 基于R语言、MaxEnt模型融合技术的物种分布模拟、参数优化方法、结果分析制图与论文写作
  • 关于居住办公人口的统计技术解决方案
  • 四、网络层(三)IPv4
  • Docker+Jenkins+Gitee+Maven构建后台jar包后配置SSH传送到服务器并执行指定命令
  • 职场经验:游戏测试的主要工作及主要流程
  • 创建react项目
  • 信息安全产品认证
  • 2021地理设计组一等奖:面向游客的旅游路线优化设计——以丹霞山景区为例
  • 企业数字化转型的整体如何规划?
  • 开放下载丨2023年二十万字技术年货新鲜送达
  • 使用 Flet Python 框架构建 URL 缩短器 Flutter 应用程序
  • 2023世界杯新媒体传播热点盘点 中国元素之中国馆、富而喜悦!
  • 如何让 git 使用我选择的编辑器来编辑提交消息?
  • 使用msf生成木马反弹shell(windows系统)
  • 2022巨量引擎城市峰会:发布重磅白皮书 提升城市繁荣力
  • Vue3组件化开发(⼀)(二) | webpack
  • Shrio入门