python之文件操作相关知识
创始人
2024-03-06 02:20:50
0

python之文件操作相关知识

一、文件的打开与关闭

1、打开文件

在Python中,使用 open() 函数,可以打开一个已经存在的文件,或创建一个新文件
语法如下:

open(文件名, 访问模式)

说明:
访问模式决定了打开文件的模式:只读,写入,追加等。这个参数是非强制的,默认文件访问模式为只读(r)。可取值见如下列表。

请添加图片描述

2、关闭文件

关闭文件使用 close() 方法

二、文件的读写

1、读

1.1 read()

使用 read(num) 可以从文件中读取数据,num 表示要从文件中读取的数据的长度,如果没有传入num,那么就表示读取文件中所有的数据

假设有文件test1.txt,位于与 Python 相同的文件夹中
请添加图片描述
示例1

# 使用 open() 函数打开文件
f = open('test1.txt','r')# 使用 read() 方法读取文件的内容
print(f.read())# 关闭这个文件
f.close()

运行结果:
请添加图片描述

示例2

# 使用 open() 函数打开文件
f = open('test1.txt','r')# 返回文件中的前五个字符
print(f.read(5))# 关闭这个文件
f.close()

运行结果:
请添加图片描述

1.2 readlines()

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

# 使用 open() 函数打开文件
f = open('test1.txt','r')print(f.readlines())# 关闭这个文件
f.close()

运行结果:
请添加图片描述

1.3 readline()

使用 readline() 方法返回一行
示例

# 使用 open() 函数打开文件
f = open('test1.txt','r')# 读取文件中的两行
print(f.readline())
print(f.readline())# 关闭这个文件
f.close()

运行结果:
请添加图片描述

1.4 逐行遍历文件

通过循环遍历文件中的行,可以逐行读取整个文件
示例

# 使用 open() 函数打开文件
f = open('test1.txt','r')for x in f:print(x)# 关闭这个文件
f.close()

运行结果:
请添加图片描述

2、写

使用 write() 可以完成向文件写入数据

假设有文件test2.txt,位于与 Python 相同的文件夹中
请添加图片描述
示例1

# 打开文件 "test2.txt" 并将内容追加到文件中
# "a" :追加,会追加到文件的末尾
f = open('test2.txt','a')
f.write('Be running up that building')
f.close()# 追加后,打开并读取该文件:
f = open("test2.txt", "r")
print(f.read())
f.close()

运行结果:
请添加图片描述

示例2

# 打开文件 "test2.txt" 并覆盖内容
# "w" :写入,会覆盖任何已有的内容
f = open('test2.txt','w')
f.write('Be running up that building')
f.close()# 写入后,打开并读取该文件:
f = open("test2.txt", "r")
print(f.read())
f.close()

运行结果:
请添加图片描述

三、文件的相关操作

当需要对文件进行重命名、删除等操作时,须导入 os 模块

1、文件重命名

os 模块中的 rename() 可以完成对文件或目录的重命名操作
语法如下:

os.rename(src, dst)

参数含义:
src:要修改的文件或目录名
dst:修改后的文件或目录名

示例

import os
# 将 test2.txt 重命名为 test最终版.txt
os.rename("test2.txt","test最终版.txt")

2、删除文件

os 模块中的 remove() 方法用于删除指定路径的文件。如果指定的路径是一个目录,将抛出 OSError
语法如下:

os.remove(path)

参数含义:
path:要删除的文件路径

示例

import os
# 删除当前工作目录下的 test最终版.txt 文件
os.remove("test最终版.txt")

3、创建文件夹

os 模块中的 mkdir() 方法用于以数字权限模式创建目录(单级目录)。默认的模式为 0777 (八进制)。如果目录有多级,则创建最后一级,如果最后一级目录的上级目录有不存在的,则会抛出一个 OSError
语法如下:

os.mkdir(path[, mode])

参数含义:
path:要创建的目录,可以是相对或者绝对路径
mode:要为目录设置的权限数字模式

示例

import os
# 创建文件夹 aaa
os.mkdir("aaa")

4、获取当前目录

os 模块中的 getcwd() 方法用于返回当前工作的目录
语法如下:

os.getcwd()

无参数

示例

import os
# 打印当前目录
print(os.getcwd())

5、改变默认目录

os 模块中的 chdir() 方法用于改变当前工作目录到指定的路径
语法如下:

os.chdir(path)

参数含义:
path:要切换到的新路径

示例

import os
# 修改当前工作目录
os.chdir("./aaa")

6、获取目录列表

os 模块中的 listdir() 方法用于获取指定目录中所有文件和目录的列表。如果未指定任何目录,则将返回当前工作目录中的文件和目录列表
语法如下:

os.listdir(path)

参数含义:
path:需要列出的目录路径

示例

import os
# 打印返回当前工作目录中的文件和目录列表
print(os.listdir())

7、删除文件夹

os 模块中的 rmdir() 方法用于删除指定路径的目录。仅当这文件夹是空的才可以, 否则, 抛出OSError
语法如下:

os.rmdir(path)

参数含义:
path:要删除的目录路径

示例

import os
# 删除文件夹 "aaa"
os.rmdir("./aaa")

相关内容

热门资讯

海南自贸区涨停潮背后:政策红利... 12月22日上午,A股市场迎来久违的“多点开花”——三大指数齐涨,而最引人注目的,莫过于海南自贸区板...
深圳:深入实施跨境贸易投资高水... 人民财讯12月23日电,深圳市人民政府印发《深圳市进一步加大吸引和利用外资实施办法》,其中提出,进一...
国家发展改革委等三部门完善幼儿... 中新网12月23日电 据国家发展改革委网站消息,近日,为深入贯彻党的二十大和二十届历次全会精神,落实...
建工修复(300958)披露累... 截至2025年12月23日收盘,建工修复(300958)报收于12.39元,较前一交易日下跌0.88...
红豆股份(600400)披露拟... 截至2025年12月23日收盘,红豆股份(600400)报收于2.4元,较前一交易日下跌2.83%,...
凌钢股份与江苏银行深圳分行纠纷... 12月23日,凌钢股份(600231)发布公告,近期公司收到辽宁省朝阳市中级人民法院的民事裁定书,案...
科蓝软件:科蓝盛合陷合同纠纷 ... 12月23日,科蓝软件(300663)发布公告,控股股东一致行动人宁波科蓝盛合投资管理合伙企业(有限...
广东潮州通报“因购物纠纷引发的... 本文转自【看潮州客户端】; 情况简讯 记者获悉,12月18日,在市区枫春路发生一起因购物纠纷引发的殴...