Python读取CSV文件的几种方法

news2024/11/27 9:42:52

话不多说,开干!!!

目录

1. 使用 csv 模块

2.使用 numpy 库

3.使用pandas库

4.使用标准库中的 csv 模块

5.注意事项


1. 使用 csv 模块

(1)项目目录如下图所示:


(2)代码如下:

import csv

filename = './data/test.csv'

with open(filename, "r") as csvfile:
    csvreader = csv.reader(csvfile)

    # 遍历csvreader对象的每一行内容并输出
    for row in csvreader:
        print(row)

(3)效果如下:

2.使用 numpy 库

(1)项目结构如下:

(2)代码如下:

# 使用 numpy 库:
import numpy as np

filename = './data/test.csv'
# delimiter参数的作用是指定分隔符,dtype参数的作用是指定数据类型
data = np.genfromtxt(filename, delimiter=' ', dtype=str)

print('df的数据类型为:{}'.format(type(data)))
print(data)

(3)效果如下:

3.使用pandas库

(1)项目结构如下:

(2)代码如下:

# 使用 pandas 库:

import pandas as pd

filename = './data/test.csv'

df = pd.read_csv(filename)

print('df的数据类型为:{}'.format(type(df)))
print(df)

(3)效果如下:

4.使用标准库中的 csv 模块

(1)项目结构如下:

(2)代码如下:

# 使用标准库中的 csv 模块:
import csv

filename = './data/test.csv'

with open(filename, newline='') as csvfile:
    reader = csv.DictReader(csvfile)

    # 遍历csvreader对象的每一行内容并输出
    for row in reader:
        print(row)

(3)效果如下:

5.注意事项

                请注意,这个程序假设您的 CSV 文件已经存在,并且可以被正确读取。如果您的 CSV 文件不在当前目录中,您需要提供完整的文件路径。

         这些方法在读取 CSV 文件时都有不同的优缺点,您可以根据自己的需求选择合适的方法。例如,如果您想要快速、方便地处理 CSV 文件并将其转换为 DataFrame 对象,则可以使用 pandas 库;如果您想要更高级的控制和更灵活的选项,则可以使用标准库中的 csv 模块。

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

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

相关文章

皕杰报表中的图表钻取

皕杰报表中图表的钻取是通过超链接实现的,其实质就是通过超链接打开了一张的新表,而把原表中的条件通过参数传递给新表,从而得到我们所需的明细数据。 超链接的地址在单元格的超链接地址属性里添加属性值,如果超链接字符串不需要动…

企业级微服务架构实战项目--xx优选1

一 项目概述 1.1 项目概述 xx优选项目:是依托社区和团长社交关系实现生鲜商品流通的新零售模式。 1.2 技术栈 1.3 功能架构图 第2部分 1.4 技术架构* 1.5 工程结构 ssyx-parent:父工程,根目录,管理子模块: ​ comm…

如何自动化的对PCAP数据包进行suricata/snort/zeek分析

在前一篇文章中,这里介绍了dalton的安装,以及使用dalton中的多种探针手动分析pcap数据包。在和其他程序联动的时候,手动分析无法满足要求,本篇文章将介绍如何通过使用dalton提供的API进行数据包的自动化分析。 在手动提交数据包分…

从零手写操作系统之RVOS系统调用实现-09

从零手写操作系统之RVOS系统调用实现-09 系统模式:用户态和内核态如何让任务运行在用户态下 系统模式的切换用户模式下访问特权指令测试系统调用系统调用执行流程系统调用传参规范系统调用封装 系统调用完整流程解析执行测试 本系列参考: 学习开发一个RISC-V上的操作…

基于html+mysql+Spring+mybatis+Springboot的Springboot宠物医院管理系统

运行环境: 最好是java jdk 1.8,我在这个平台上运行的。其他版本理论上也可以。 IDE环境: Eclipse,Myeclipse,IDEA或者Spring Tool Suite都可以,如果编译器的版本太低,需要升级下编译器,不要弄太低的版本 tomcat服务器环…

一般人不要轻易去自学网络安全(黑客)

笔者本人 17 年就读于一所普通的本科学校,20 年 6 月在三年经验的时候顺利通过校招实习面试进入大厂,现就职于某大厂安全联合实验室。 我为啥说自学黑客,一般人我还是劝你算了吧!因为我就是那个不一般的人。 首先我谈下对黑客&a…

[游戏开发][Unity]Assetbundle下载篇(1)热更前准备与下载AB包清单

热更流程都不是固定的,每个人写的状态机也有所差别,但是一些必要步骤肯定不可能少,例如下载清单,对比版本,下载AB包,标记下载完成。我接下来的每一篇文章都是下载AB包的重要步骤,大概率是不能省…

Kibana:使用 Kibana 自带数据进行可视化(三)

在今天的练习中,我们将使用 Kibana 自带的数据来进行一些可视化的展示。希望对刚开始使用 Kibana 的用户有所帮助。这是这个系列的第三篇文章。这个是继上一篇文章 “Kibana:使用 Kibana 自带数据进行可视化(二)” 的续篇。 前提条…

学成在线----day5

1、媒资管理需求分析 2、为什么要用网关 当前要开发的是媒资管理服务,目前为止共三个微服务:内容管理、系统管理、媒资管理,如下图: 后期还会添加更多的微服务,当前这种由前端直接请求微服务的方式存在弊端&#xff…

微服务架构中的数据一致性:解决方案与实践| 得物技术

1 为什么要做服务之间的数据一致性 作为互联网公司的研发工程师,微服务的架构思想对于各位读者朋友来说,已经不是陌生东西。我们当中的大多数人,或多或少经历过从单体应用到微服务化的系统拆分和演进过程。我们按照庞大系统的业务功能和特征…

都说网络安全渗透工程师前景好,好在哪?

渗透工程师前景非常好,网络安全发展规模不断扩大,未来行业类的人才需求也会越来越多。就目前看来在网络安全方向上就业的薪资待遇也十分可观。 其就业方向有很广泛,如网络安全工程师,渗透测试工程师等。 渗透测试人员通常对网络…

keras搭建轻量级卷积神经网络CNN开发构建国家一级保护动物识别分析系统,集成开发GradCAM实现热力图分析可视化

动物识别相关的项目本质上属于图像识别,在我之前的博文中已经有过不少实践了,感兴趣的话可以自行移步阅读即可,这里不是说想要单纯地去做一个动物识别的项目,昨晚在玩手机的时候突然被小孩问到一个动物是不是国家保护动物&#xf…

SpringBoot 事件监听处理(五十一)

当死亡笼罩在脑海,请用生的信念打败它 上一章简单介绍了Retry重试机制(五十), 如果没有看过,请观看上一章 参考文章: https://blog.csdn.net/qq_37758497/article/details/118863308 一. Spring 事件监听 Spring的事件监听(也叫事件驱动)是观察者模式的一种实现&…

Windows 10磁盘碎片整理:含义和操作方法

什么是Windows磁盘碎片? 随着电脑硬盘使用时间的增长,磁盘上会产生大量的垃圾碎片。这些碎片会分布在磁盘的各个角落,严重影响磁盘的响应速度。为了在一定程度上提高系统性能,定期使用Windows10的磁盘碎片整理工具来进行碎片整…

Vue.js中的Mixin和组件插槽

Vue.js中的Mixin和组件插槽 介绍 在Vue.js中,Mixin和组件插槽是两个非常有用的概念。Mixin是一种可重用Vue组件的方式,而组件插槽则提供了一种在组件之间共享内容的方式。虽然这两个概念在功能上有所不同,但它们对于Vue.js应用程序的开发都非…

Vue 中的数据请求如何进行拦截与错误处理

Vue 中的数据请求拦截与错误处理 在 Vue.js 中,我们经常需要向后端服务器发送数据请求,以获取或提交数据。在这个过程中,我们可能会遇到一些问题,例如无效的请求参数、网络连接错误、服务器错误等。为了更好地处理这些问题&#…

优化和扩展:处理不同操作和参数的数字列表

引言 在编程中,我们有时需要根据输入执行不同的操作,而这些操作涉及到数字列表,并且每个操作可能具有不同数量的参数。本文将介绍如何优化和扩展代码,以便更好地处理这种情况。 问题描述 当前遇到的问题是需要根据输入执行不同…

Mysql中的Buffer pool

Buffer Pool在数据库里的地位 1、回顾一下Buffer Pool是个什么东西? 数据库中的Buffer Pool是个什么东西?其实他是一个非常关键的组件,数据库中的数据实际上最终都是要存放在磁盘文件上的,如下图所示。 但是我们在对数据库执行增…

2023最新Java面试八股文,阿里/腾讯 / 美团 / 字节 1 000道 Java 中高级面试题

企业调薪、裁员、组织架构调整等等,坏消息只多不少,最近也有很多来咨询跳槽的朋友,都是因为之前的公司出现了比较大的薪资和组织变动 近期有许多粉丝非常关注最新的面试题!于是小编去各大平台搜罗了一份近期大厂面试的一些内容&a…

基础工程(cubeide串口调试,printf实现,延时函数)

0.基础工程(cubeide串口调试,printf实现,延时函数) 文章目录 0.基础工程(cubeide串口调试,printf实现,延时函数)外部时钟源CLOCK(RCC)系统时钟SYS与DEBUG设置UART串口设置cubeide设置…