软件测试|使用Python读取CSV文件的详细指南

简介

CSV(Comma-Separated Values)是一种常用的数据存储格式,它以逗号为分隔符将数据以文本形式存储在文件中。Python是一门强大的编程语言,提供了许多库和工具,使得读取和处理CSV文件变得非常简便。在本文中,我们将深入介绍如何使用Python读取CSV文件的详细步骤。

步骤1:导入所需的库

在开始之前,需要导入Python中处理CSV文件所需的库。Python标准库中的csv模块是一个处理CSV文件的良好选择。

import csv

步骤2:打开CSV文件

在读取CSV文件之前,需要使用Python的内置open函数打开文件。确保提供正确的文件路径,并指定文件的打开模式为读取('r')。

file_path = 'your_file.csv'with open(file_path, 'r') as csv_file:# 后续操作将在此代码块中进行

步骤3:创建CSV读取器

在打开文件后,需要创建一个CSV读取器对象,用于我们逐行读取CSV文件的内容。

with open(file_path, 'r') as csv_file:csv_reader = csv.reader(csv_file)for row in csv_reader:# 每次迭代将读取一行数据并存储在'row'变量中

步骤4:处理CSV数据

现在我们可以通过迭代CSV读取器对象来访问每一行数据。每一行数据都被解析为一个由字段组成的列表。

with open(file_path, 'r') as csv_file:csv_reader = csv.reader(csv_file)for row in csv_reader:# 您可以通过索引访问每个字段# 例如:第一个字段 row[0], 第二个字段 row[1], 依此类推# 进行您的数据处理操作,例如打印每一行数据print(row)

步骤5:使用CSV DictReader

如果CSV文件的第一行包含列标题,我们还可以使用csv.DictReader来创建一个能够返回每行数据作为字典的读取器。这样做使得我们可以通过列标题访问数据,使得代码更加清晰易读。

with open(file_path, 'r') as csv_file:csv_reader = csv.DictReader(csv_file)for row in csv_reader:# 可以通过列标题访问每个字段# 例如:row['Name'], 依此类推# 进行数据处理操作,例如打印特定字段的值print(row['Name'])

使用示例

假设我们有一个CSV文件,内容如下:

name, id, major
muller, 01, math
salah, 02, music
messi, 03, english

我们要完整读取其内容,代码如下:

import csv
# open file by passing the file path.
with open('files/data.csv', 'r') as csv_file:csv_read = csv.reader(csv_file, delimiter=',')  #Delimeter is commacount_line = 0# Iterate the file object or each row of the filefor row in csv_read:if count_line == 0:print(f'Column names are {", ".join(row)}')count_line += 1else:print(f'\t{row[0]} id is:  {row[1]} and major is: {row[2]}.')count_line += 1print(f'Processed {count_line} lines.')

运行脚本,结果如下:

Column names are name,  id,  majormuller id is:   01 and major is:  math.salah id is:   02 and major is:  music.messi id is:   03 and major is:  english.
Processed 4 lines.

总结

通过按照上述步骤,我们可以轻松地使用Python读取和处理CSV文件中的数据。无论是简单的数据分析还是复杂的数据处理,Python的CSV处理功能都能满足我们的需求。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/614801.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

conda环境下cannot write keep file问题解决

1 问题描述 conda环境下执行如下命令报错: pip install githttps://github.com/wenet-e2e/wenet.git 错误信息如下: (pt) PS D:\code\ptcontainer> pip install githttps://github.com/wenet-e2e/wenet.git Looking in indexes: http://pypi.doub…

windows安装RabbitMq,修改数据保存位置

1、先安装Erlang, Erlang和RabbitMQ有版本对应关系。 官网RabbitMQ与Erlang版本对应RabbitMQ Erlang Version Requirements — RabbitMQ 2、安装RabbitMQ。 3、修改数据保存地址。找到安装目录下的sbin文件夹,找到rabbitmq-env.bat,编辑文件…

Windows和Linux安装jdk

一、Windows安装jdk 1、下载安装包 Jdk官网下载地址:Java Downloads | Oracle 需要登陆Oracle账号信息。 百度网盘下载地址:https://pan.baidu.com/s/1eN1PX6gKdKgwJ24CM0bDsw 提取码:4bpp 目前最新jdk的版本是21,可以下载不同…

SQL SERVER 19安装 SQL Prompt 10.02版本

SQL Prompt最新版官网下载地址:https://download.red-gate.com/SQLPromptDownload.exe 下载完成后,断开网络,全部点下一步。 注册机会报毒,安装前请先关闭杀毒软件! 下载好附件之后解压,打开SQLPrompt_7…

深入理解 Flink(六)Flink Job 提交和 Flink Graph 详解

Flink Program 编程套路回顾 1、获取执行环境对象 StreamExecutionEnvironment env StreamExecutionEnvironment.getExecutionEnvironment(); 2、通过执行环境对象,注册数据源 Source,得到数据抽象 DataStream ds env.socketTextStream(...) 3、调用数…

python统计分析——小提琴图(plt.violinplot)

参考资料:用python动手学统计学,帮助文档 使用matplotlib.pyplot.violinplot()函数绘制小提琴图 小提琴图是将数值型数据的核密度图与箱线图融合在一起,具体来说是用核密度估计的结果替换了箱子,而形成的一个形似小提琴的图形。 …

openssl3.2 - 在VS2019下源码调试openssl.exe

文章目录 openssl3.2 - 在VS2019下源码调试openssl.exe概述笔记先看一个用.bat调用openssl干活的实例VS2019调试参数设置设置 - 命令参数设置 - 工作目录设置 - 环境变量将命令行中需要的文件拷贝到exe目录单步调试备注END openssl3.2 - 在VS2019下源码调试openssl.exe 概述 …

Java面试题之JVM

Java面试题之JVM 1. JVM的组成部分及其作用?2. JVM的堆和栈的区别?3. 简述一下垃圾回收机制?(垃圾回收的原理?)4. 垃圾回收器都有什么?该怎么选择?5. 如何判断垃圾可以回收了?6. 垃圾回收算法有…

vue3的福音框架arco.design

前言: 在vue2于2023年底正式宣布不在维护,vue3使用越来越频繁的时刻,我们实现项目的辅助框架也越来越多。element, iview, antd 等经典框架继续风靡一时,不过也有很多好的框架,功能也强大,比如我们今天说的…

Python办公自动化 – 自动化文本翻译和Oracle数据库操作

Python办公自动化 – 自动化文本翻译和Oracle数据库操作 以下是往期的文章目录,需要可以查看哦。 Python办公自动化 – Excel和Word的操作运用 Python办公自动化 – Python发送电子邮件和Outlook的集成 Python办公自动化 – 对PDF文档和PPT文档的处理 Python办公自…

Unity中URP下实现能量罩(扭曲流光花纹)

文章目录 前言一、能量罩花纹1、在属性面板接收能量罩花纹纹理2、申明 纹理 和 采样器3、在顶点着色器,应用 Tilling 和 Offset4、在片元着色器,纹理采样后,与之前的结果相乘输出 二、能量罩流光1、在顶点着色器,记录原uv值2、在片…

【软件测试】学习笔记-从0到1:API测试怎么做

这篇文章是API测试的基础,先从0到1设计一个API测试用例,通过这个测试用例,体会到最基本的API测试是如何进行的,并介绍几款常用的API测试工具。 API测试的基本步骤 通常来讲,无论采用什么API测试工具,API测…

Spring Boot - Application Events 的发布顺序_ApplicationContextInitializedEvent

文章目录 Pre概述Code源码分析 Pre Spring Boot - Application Events 的发布顺序_ApplicationEnvironmentPreparedEvent Spring Boot - Application Events 的发布顺序_ApplicationEnvironmentPreparedEvent 概述 Spring Boot 的广播机制是基于观察者模式实现的&#xff0c…

Github

文章目录 Github 的作用基本概念创建仓库以及相关介绍创建文件、查看文件信息、编辑程序上传文件搜索文件下载/检出文件 Github 的作用 项目代码托管平台 基本概念 Repository 仓库,用于存放项目代码 *Star 收藏项目,方便下次查看(有一百个st…

【谭浩强C程序设计精讲 7】数据的输入输出

文章目录 3.5 数据的输入输出3.5.1 输入输出举例3.5.2 有关数据输入输出的概念3.5.3 用 printf 函数输出数据1. printf 的一般格式2. 格式字符 3.5.4 用 scanf 函数输入数据1. scanf 函数的一般形式2. scanf 函数中的格式声明3. 使用 scanf 函数时应注意的问题 3.5.5 字符输入输…

UI自动化测试工具对企业具有重要意义

随着软件行业的不断发展,企业对高质量、高效率的软件交付有着越来越高的要求。在这个背景下,UI自动化测试工具成为了企业不可或缺的一部分。以下是UI自动化测试工具对企业的重要作用: 1. 提高软件质量 UI自动化测试工具能够模拟用户的操作&am…

K8s---存储卷(动态pv和pvc)

当我要发布pvc可以生成pv,还可以共享服务器上直接生成挂载目录。pvc直接绑定pv。 动态pv需要两个组件 1、卷插件:k8s本生支持的动态pv创建不包括nfs,需要声明和安装一个外部插件 Provisioner: 存储分配器。动态创建pv,然后根据pvc的请求自动…

易安联参与制定的《面向云计算的零信任体系》行业标准即将实施

中华人民共和国工业和信息化部公告2023年第38号文件正式发布行业标准:YD/T 4598.2-2023《面向云计算的零信任体系 第2部分:关键能力要求》及YD/T 4598.3-2023《面向云计算的零信任体系 第3部分:安全访问服务边缘能力要求》,并于20…

npm run dev,vite 配置 ip 访问

启动项目通过本地 ip 的方式访问 方式一.通过修改 package.json "scripts": {"dev": "vite --host 0.0.0.0",}, 方式二.通过修改 vite.config.ts export default defineConfig({plugins: [vue(), vueJsx()],server: { // 配置 host 与 port 方…

electron+vue网页直接播放RTSP视频流?

目前大部分摄像头都支持RTSP协议,但是在浏览器限制,最新版的浏览器都不能直接播放RTSP协议,Electron 桌面应用是基于 Chromium 内核的,所以也不能直接播放RTSP,但是我们又有这个需求怎么办呢? 市场上的方案…