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

Python基础知识之文件

目录

文件

总结:文件操作的作用就是把一些内容(数据)存储存放起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力。

一.文件基础操作

1.打开文件

2.读写等操作

3.关闭文件

1.打开文件

2.写文件

*访问模式特点

1.r只读方式

a.若只读的文件不存在

2.w写入方式

3.a追加方式

4.省略访问模式

5.特点

3.读取文件

a.read()

b.readlines()

c.readline()

4.seek函数

二.文件备份

三.文件和文件夹的操作

1.导入os模块

2.使用os模块相关功能

a.文件

1文件重命名

2文件删除

b.文件夹

2.删除文件夹

3.获取当前文件目录路径

4.改变文件目录路径

5.获取目录列表

c.文件夹重命名(与文件同理)

四.应用案例

a.批量重命名

b.按需重命名


文件

总结:文件操作的作用就是把一些内容(数据)存储存放起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力。

一.文件基础操作

1.打开文件
2.读写等操作
3.关闭文件

注意:可以只打开和关闭文件,不进行任何读写操作

1.打开文件

注:f为下面所需的对象

2.写文件

注:代码实现向文件test.txt中读写aaa,会自动创建一个test.txt文件(在没有的前提下)

*访问模式特点

1.r只读方式

a.若只读的文件不存在

b.所标提示词与操作不符

2.w写入方式

书写完aaa,后更改为bbb,文件内容只显示aaa

3.a追加方式

书写完abc,后更改为xyz,文件内容显示abcxyz

4.省略访问模式

5.特点

(有b的为二进制读取,有+的为可读可写)

测试W+时只读取,未填写则默认填写空白内容,并覆盖了原有内容,故读取内容为空白

3.读取文件

a.read()

num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有的数据。

(注:文件换行依赖换行符—看不见,换行符\n占一字节)

b.readlines()

readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且这回的是一个列表,其中每一行的数据为一个元素

(注:最后一行无转行符)

c.readline()

readline一次读取一行内容

(注:第几次调用,便读取第几行)

4.seek函数

作用:移动文件指针

语法: 文件对象.seek(偏移量,起始位置) 0开头1当前2结尾

目标:

1.r 改变文件指针位置:改变读取数据开始位置或把文件指针放结尾(无法读取数据)

2.a 改变文件指针位置,做到可以读取出来数据

(注:两个0可简写为一个)

二.文件备份

1.步骤

1.接收用户输入的文件名

2.规划备份文件名

3.备份文件写入数据

2.代码实现

4.完善代码(文件无效,没有名字)

如果用户输入.txt,这是一个无效文件,程序如何更改才能限制只有有效的文件名才能备份?

答:添加条件判断即可。

三.文件和文件夹的操作

在python中文件和文件夹的操作要借助os模块里面的相关功能,具体步骤如下:

1.导入os模块

2.使用os模块相关功能

a.文件

1文件重命名

注:src代表文件路径

2文件删除

3代码展示

注:Python环境下文件可以跳过路径直接输入名字进行操作

注:不存在的文件进行删除操作会报错

b.文件夹

1.创建文件夹

注:创建重复文件会报错

2.删除文件夹

3.获取当前文件目录路径

4.改变文件目录路径

5.获取目录列表

注:不写则默认返回当前文件夹下文件

c.文件夹重命名(与文件同理)

四.应用案例

需求:批量修改文件名,既可添加指定字符串,又能删除指定字符串。

步骤

1.设置添加删除字符串的的标识

2.获取指定目录的所有文件

3.将原有文件名添加/删除指定字符串,构造新名字

4.os.rename()重命名

a.批量重命名

b.按需重命名

http://www.lqws.cn/news/544987.html

相关文章:

  • JMH (Java Microbenchmark Harness)
  • .NET MAUI跨平台串口通讯方案
  • (LeetCode 面试经典 150 题 ) 238. 除自身以外数组的乘积 (前缀和)
  • LeetCode 312 戳气球题解(Swift)+ 区间 DP 原理详解 + 可运行代码
  • WSL升级到24.04
  • 使用 asp.net core webapi 导出数据文件
  • .NetCore+Vue快速生产框架开发详细方案
  • LeetCode 349题解 | 两个数组的交集
  • 苍穹外卖day5--Redis设置店铺营业状态
  • 基于ubuntu 22.04环境安装NEURON仿真器
  • jenkins中执行python脚本导入路径错误
  • 跟着AI学习C#之项目实战-电商平台 Day3
  • 《聊一聊ZXDoc》之汽车服务导向SOME/IP
  • 自动登录脚本神器-Mac电脑实现自动登录堡垒机并自动输入账号密码跳转不同机器环境
  • uniapp处理后端返回的html字符串
  • spring-security-oauth2系列:自定义认证服务器
  • 为什么python处理csv文件将某个值替换成另一个值并另存后,csv文件的大小减小了一半
  • Nginx 与 Apache:有什么区别?哪种服务器最适合您?
  • 【数据挖掘】数据采集和预处理
  • 如何确保京东商品数据采集的准确性和及时性?
  • 【lua】Linux上安装lua和luarocks包管理工具
  • 提升AI准确性的关键:精准添加上下文
  • 【NodeJs】【npm】npm安装electron报错
  • Python Async 编程快速入门 | 超简明异步协程指南
  • C++常用算法解析:sort、find、for_each、copy
  • 阶段二开始-第一章—8天Python从入门到精通【itheima】-116节(封装)
  • cuda编程笔记(5)--原子操作
  • UI前端与数字孪生结合案例分享:智慧零售的可视化解决方案
  • 北京燃气集团管道腐蚀智能预测实践:LSTM算法驱动能源设施安全升级
  • VSCode中创建和生成动态库项目