【Python】文件及目录
文章目录
- 概要
- 一、文件对象的函数
- 1.1 open()函数
- 1.2 文件对象的函数
- 1.3 with语句
- 二、基于os和os.path模块的目录操作
- 三、基于Pandas的文件处理
- 3.1 Pandas读写各种类型文件
- 其他章节的内容
概要
本文主要将了打开文件的函数open()的参数,以及文件对象的函数,基于Python的os模块对目录进行操作,还有Pandas的基础知识。
一、文件对象的函数
1.1 open()函数
将某一文本文件打开为txtFile:
txtFile = open(filename, mode, buffering=-1, ecoding=None)
filename是文件名,也就是说当文本文件与py文件在同一目录下时如此打开,在不同目录下时文件名应该是文本文件的完整路径。mode是打开模式由两个字母组成,第一个字母是操作模式,第二个是文件打开类型。buffering是缓冲策略,负数表示按系统默认,0表示不缓存,1表示缓存,其他正整数指定缓冲区的大小。ecoding是文件的编码形式。文件打开模式字母意义如下:
| 字母 | 代表含义 |
|---|---|
| “ r ” | 只读模式(默认) |
| “ w ” | 覆写模式(没有这个文件则创建,有则覆盖) |
| “ a ” | 追加模式(没有这个文件则创建,有则追加内容) |
| “ + ” | 与上面三个字母配合,表示可读可写 |
| “ t ” | 文本类型 |
| “ b ” | 二进制类型 |
1.2 文件对象的函数
| 函数 | 意义 |
|---|---|
| open() | 打开文件 |
| resd(size) | 以指定字节数读取,没有或为负数则读取全部内容 |
| resdline() | 读取整行 |
| resdlines() | 读取全部行并返回列表 |
| write(s) | 把字符串s写入文件,默认编码是utf-8 windows的默认编码是GBK,用ecoding=“GBK” |
| writelines(s) | 向文件写入元素全为字符串的列表,如需换行需自己写入换行符 |
| seek(off, whence=0) | 设置文件读写当前位置 |
| tel() | 返回文件当前读写位置 |
| close() | 关闭文件 |
1.3 with语句
在每次完成文件的操作后都需要调用close()函数来关闭文件,防止资源占用等问题,但手动调用太麻烦,可以使用with来代替。with是一个简洁高效的上下文管理器,以后会知道,他除了能管理文件还能管理网络连接。他的基本语法如下:
with open() as file: # file可以是任何名字用来表示后续在with里面对文件的操作 pass
二、基于os和os.path模块的目录操作
以下函数的参数除非标注均为存文件路径的变量,可以是绝对路径也可以是相对的。
| 函数 | 意义 |
|---|---|
| os.listdir() | 返回文件绝对路径 |
| os.getcwd() | 返回当前工作目录 |
| os.walk(top) | 从top目录开始遍历子目录及文件名,返回当前遍历到的目录路径,当前目录的子目录名,当前目录的下的文件 |
| os.path.exists() | 判断文件是否存在 |
| os.path.join(path, name) | 拼接文件路径 |
| os.path.splitext() | 返回文件名和扩展名 |
| os.path.basename() | 提取文件名 |
| os.path.diename() | 提取文件路径 |
三、基于Pandas的文件处理
3.1 Pandas读写各种类型文件
3.1.1 Pandas对文件读取的函数
| 读取函数 | 写入函数 | 文件类型 |
|---|---|---|
| read_csv | to_csv | 读写CSV文件 |
| read_excel | to_excel | 读写Excel文件 |
| read_json | to_json | 读写JSON文件 |
3.1.2 Pandas读取文件函数的参数
| 参数 | 含义 |
|---|---|
| sep 或 delimiter | 列分割符 |
| header | 列名,如果文件中已经有列名则传None |
| index_col | 作为索引的列名 |
| skiprows | 要跳过的文件头行数 |
| na_values | 用于处理缺失数据的字符串 |
| encoding | 字符编码方式 |
其他章节的内容
序列
集合与字典
函数
模块和包
异常
文件
类
相关文章:
【Python】文件及目录
文章目录 概要一、文件对象的函数1.1 open()函数1.2 文件对象的函数1.3 with语句 二、基于os和os.path模块的目录操作三、基于Pandas的文件处理3.1 Pandas读写各种类型文件 其他章节的内容 概要 本文主要将了打开文件的函数open()的参数,以及文件对象的函数&#x…...
OpenHarmony(鸿蒙南向开发)——标准系统方案之瑞芯微RK3566移植案例(下)
往期知识点记录: 鸿蒙(HarmonyOS)应用层开发(北向)知识点汇总 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~ 持续更新中…… 概述 OpenHarmony Camera驱动模型结构 HDI Implementation&#x…...
霓虹灯数字时钟(可复制源代码)
文章目录 一、效果演示二、CodeHTMLCSSJavaScript 三、实现思路拆分CSS 部分JavaScript 部分 四、源代码 一、效果演示 文末可一键复制完整代码 二、Code HTML <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><…...
大模型微调技术之 LoRA:开启高效微调新时代
一、LoRA 简介 LoRA,即低秩适应(Low-Rank Adaptation),是一种用于微调大型语言模型的技术,旨在以较小的计算资源和数据量实现模型的快速适应特定任务或领域。 LoRA 方法通过引入低秩近似的思想,对大型预训…...
【Vue】Vue2(2)
文章目录 1 数据代理1.1 回顾Object.defineproperty方法1.2 何为数据代理1.3 Vue中的数据代理 2 事件处理2.1 事件的基本使用2.2 事件修饰符2.3 键盘事件 1 数据代理 1.1 回顾Object.defineproperty方法 <!DOCTYPE html> <html><head><meta charset&quo…...
如何实现一个基于 HTML+CSS+JS 的任务进度条
如何实现一个基于 HTMLCSSJS 的任务进度条 在网页开发中,任务进度条是一种常见的 UI 组件,它可以直观地展示任务的完成情况。本文将向你展示如何使用 HTML CSS JavaScript 来创建一个简单的、交互式的任务进度条。用户可以通过点击进度条的任意位置来…...
学会流体力学,冬天洗澡再也不冷啦
前些日子收到一位网友“究极理性怪物”的私信,说最近在学校的公共浴室洗澡时,快被冻死了,希望我从流体力学角度帮他分析一下浴室的温度分布,以便找到相对温暖的洗澡位置。 我看到后觉得很有意思,就与他展开了关于澡堂…...
WPF下使用FreeRedis操作RedisStream实现简单的消息队列
Redis Stream简介 Redis Stream是随着5.0版本发布的一种新的Redis数据类型: 高效消费者组:允许多个消费者组从同一数据流的不同部分消费数据,每个消费者组都能独立地处理消息,这样可以并行处理和提高效率。 阻塞操作:消费者可以设置阻塞操作,这样它们会在流中有新数据…...
踩坑NVTX
最开始在 【简说】NVTX Nsight Nvidia性能分析利器 看到NVTX的时候,我觉得这是一个好东西啊,可以详细说明每一段时间对应的是哪一段程序。 看了一下github,他的文章已经过时,现在已经不需要链接动态库了,直接includ…...
Ubuntu修改IP方法
方法一:通过图形化界面修改IP 打开网络设置: 点击桌面右上角的网络图标,然后选择“设置”或“网络设置”。 选择网络接口: 在网络设置窗口中,选择你正在使用的网络接口(有线或无线网络)。 进…...
C++——STL简介
目录 一、什么是STL 二、STL的版本 三、STL的六大组件 没用的话..... 不知不觉两个月没写博客了,暑假后期因为学校的事情在忙,开学又在准备学校的java免修,再然后才继续开始学C,然后最近打算继续写博客沉淀一下最近学到的几周…...
[linux] 磁盘清理相关
在 CentOS 7 中清理磁盘空间可以通过多种方法实现,以下是一些常用的步骤和命令: 1. 查找和删除大文件 你可以使用 find 命令查找占用大量空间的文件: find / -type f -size 100M 2>/dev/null这条命令会查找大于 100 MB 的文件。你可以根…...
【笔记】DDD领域驱动设计
同名读书笔记,对于一些自觉重要的点进行记录。 扩展资源:github.com/evancyz/ddd-learning UML中类图的一些基本知识 - jack_Meng - 博客园 最后的第四部分暂时没看 Part Two 模型驱动设计的构造块 Chapter 5 软件中所表示的模型 5.2 模式:…...
用AI构建小程序需要多久?效果如何?
随着移动互联网的快速发展,多端应用的需求日益增长。为了提高开发效率、降低成本并保证用户体验的一致性,前端跨端技术在如今的开发界使用已经非常普遍了,技术界较为常用的跨端技术有小程序技术、HTML5技术两大类。 2023年以来,伴…...
深度学习的应用综述
文章目录 引言深度学习的基本概念深度学习的主要应用领域计算机视觉自然语言处理语音识别强化学习医疗保健金融分析 深度学习应用案例公式1.损失函数(Loss Function) 结论 引言 深度学习是机器学习的一个子领域,通过模拟人脑的神经元结构来处理复杂的数据。近年来&…...
whereis命令:查找命令的路径
一、命令简介 whereis 命令用于查找命令的:可执行文件、帮助文件和源代码文件。 例如 $ whereis ls ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz找到了 ls 命令的可执行文件、帮助文件的位置。 二、命令参数 命令格式 whereis [选项] [命令名称]选项…...
【ECMAScript 从入门到进阶教程】第四部分:项目实践(项目结构与管理,单元测试,最佳实践与开发规范,附录)
第四部分:项目实践 第十四章 项目结构与管理 在构建现代 Web 应用程序时,良好的项目结构和管理是确保代码可维护性、高效开发和部署成功的关键因素。这一章将深入讨论项目初始化与配置,以及如何使用构建工具来简化和优化项目建设过程。 14…...
算法讲解—最小生成树(Kruskal 算法)
算法讲解—最小生成树(Kruskal 算法) 简介 根据度娘的解释我们可以知道,最小生成树(Minimum Spanning Tree, MST)就是:一个有 n n n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n n n 个结点…...
掌握 C# 多线程与异步编程
现代应用程序通常需要执行复杂的计算或处理 I/O 操作,这些操作可能会导致主线程阻塞,从而降低用户体验。C# 提供了多线程与异步编程的多种工具,让我们能够高效地并发处理任务。本文将介绍 C# 中的多线程与异步编程,包括 Thread 类…...
Angular 2 用户输入
Angular 2 用户输入 Angular 2 是一个由 Google 维护的开源前端 web 框架,用于构建单页应用程序(SPA)。它以其高效的双向数据绑定、模块化架构和强大的依赖注入系统而闻名。在 Angular 2 应用程序中,处理用户输入是核心功能之一,因为它允许应用程序响应用户的操作。 Ang…...
Alpamayo-R1-10B保姆级教程:Linux服务器远程访问7860端口配置
Alpamayo-R1-10B保姆级教程:Linux服务器远程访问7860端口配置 1. 引言:为什么需要远程访问? 想象一下这个场景:你在本地电脑上部署了强大的Alpamayo-R1-10B自动驾驶模型,但每次想测试都得跑到服务器机房,…...
从CPython 3.12到3.14:我们逆向了217个AOT相关PR,提炼出6个决定编译成功率的核心宏定义(含Py_BUILD_CORE_MODULE与Py_LIMITED_API冲突解决方案)
第一章:Python 原生 AOT 编译方案 2026 高级开发技巧Python 社区在 2026 年迎来关键演进:CPython 官方正式集成原生 Ahead-of-Time(AOT)编译能力,无需依赖第三方运行时或 JIT 层即可生成平台专用的静态可执行文件。该特…...
Buzz:离线环境下音频转录与翻译的完整解决方案
Buzz:离线环境下音频转录与翻译的完整解决方案 【免费下载链接】buzz Buzz transcribes and translates audio offline on your personal computer. Powered by OpenAIs Whisper. 项目地址: https://gitcode.com/GitHub_Trending/buz/buzz 在当今信息驱动的工…...
定制属于自己的AS-I总线
本公司自己已经完成AS-I总线主站、电源、从站模块的纯国产化,可以基于AS-I总线的基础上进行拓展,欢迎有需求的、有想法的各类人士一起撑起AS-I国产化一片天...
根据给定文本内容,适合的标题可以是:“‘三泵排水电气控制系统及组态设计的梯形图、接线图原理图”...
自动排水控制设计3泵排水三泵排水电气控制系统排水组态 我们主要的后发送的产品有,带解释的梯形图接线图原理图图纸,io分配,组态画面每逢暴雨天,物业师傅盯着排水泵的手机都要刷出火星子——生怕哪台泵罢工,地下室直…...
JAVA重点基础、进阶知识及易错点总结(17)线程安全 synchronized 同步锁
🚀 Java 巩固进阶 第17天 主题:线程安全 & synchronized 同步锁 —— 并发编程的第一道防线📅 进度概览:今天攻克 多线程最核心难题:线程安全。这是面试必考、生产环境必用的知识点,直接决定你的代码能…...
2025最权威的降AI率网站实际效果
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 有的技术方案,其旨在减低文本人工智能生成特征,这就是降AIGC工具。它…...
浅谈MIKEURBAN计算进度条停止的解决方法
01 问题昨天晚上,一个同事拿着笔记本对着我说,为什么我的MIKE URBAN计算进度条一直停滞在5%,停止了。我说是不是兼容问题,要不重新安装下软件吧。最终还是很感谢某同事找到了解决方法。02 解决方法MIKE URBAN低版本的通常分为了32…...
美的集团2025年营收创新高、利润100%分红 落地1.3万个AI智能体
3月30日,美的集团发布2025年年报,实现营业总收入4585亿元,同比增长12.1%;归属于上市公司股东的净利润439.5亿元,同比上升14%。在业绩再创新高的同时,伴随我国“人工智能”行动的全面实施,美的集…...
基于Maxwell的750W内转子伺服电机设计:14极12槽优化方案解析
基于maxwwell设计的经典750W,3000RPM 内转子 私服电机,14极12槽,外径76 轴向长度56.7 ,转矩1Nm,直流母线12V,辅助槽优化了齿槽转矩,特色是转子加工方便,永磁同步电机(PMSM BLDC&…...
