下面为你讲解Python文件读写相关的内容。
Python打开文件
在Python中打开文件有两种常见的方式,分别是使用内置函数open()
和使用第三方库pathlib
。下面分别进行讲解。
open函数
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
file
:文件路径,可以是相对路径或绝对路径。mode
:打开模式,包括读取模式(r)、写入模式(w)、追加模式(a)等。encoding
:文件编码格式,默认是None,采用系统默认编码格式。errors
:指定编码错误处理方式,例如'ignore'表示忽略错误。newline
:指定文件的新行字符,用于读取文件和写入文件时的行分隔符。closefd
:Boolean型,表示是否在文件关闭时同时关闭文件描述符(默认为True)。
示例1:使用open函数读取文本文件
try:
with open("test.txt", "r", encoding="utf-8") as f:
data = f.read()
print(data)
except IOError:
print("打开文件失败!")
示例2:使用open函数写入文本文件
try:
with open("test.txt", "w", encoding="utf-8") as f:
f.write("Hello, World!")
except IOError:
print("写入文件失败!")
pathlib库
pathlib
是Python内置的文件路径操作库,提供了Path
类,可以方便地进行文件操作。它可以用于检查文件是否存在、读取文件内容、写入、删除等常见的文件操作。
示例3:使用pathlib库读取文件内容
from pathlib import Path
try:
p = Path("test.txt")
with p.open("r", encoding="utf-8") as f:
data = f.read()
print(data)
except IOError:
print("打开文件失败!")
示例4:使用pathlib库写入文件内容
from pathlib import Path
try:
p = Path("test.txt")
with p.open("w", encoding="utf-8") as f:
f.write("Hello, World!")
except IOError:
print("写入文件失败!")
文件读写操作
文件读写是常见的操作,Python提供了多种读写方式。
读文件
read()
:读取文件中的所有内容,返回字符串。如果读取的是二进制文件,返回包含整个文件数据的字节串。readline()
:读取文件的一行,返回字符串。readlines()
:读取文件的所有行,返回字符串列表。
示例5:使用read方式读取文件内容
try:
with open("test.txt", "r", encoding="utf-8") as f:
data = f.read()
print(data)
except IOError:
print("打开文件失败!")
示例6:使用readline方式读取文件内容
try:
with open("test.txt", "r", encoding="utf-8") as f:
data = f.readline()
print(data)
except IOError:
print("打开文件失败!")
示例7:使用readlines方式读取文件内容
try:
with open("test.txt", "r", encoding="utf-8") as f:
data = f.readlines()
print(data)
except IOError:
print("打开文件失败!")
写文件
write(data)
:向文件中写入字符串数据。如果文件不存在,则创建文件。writelines(lines)
:向文件中写入字符串列表。如果文件不存在,则创建文件。
示例8:使用write方式向文件中写入内容
try:
with open("test.txt", "w", encoding="utf-8") as f:
f.write("Hello, World!")
except IOError:
print("写入文件失败!")
示例9:使用writelines方式向文件中写入内容
try:
with open("test.txt", "w", encoding="utf-8") as f:
lines = ["Hello, ", "World!"]
f.writelines(lines)
except IOError:
print("写入文件失败!")
with方式
Python提供了with语句,可以更方便地管理打开的文件资源,同时自动关闭文件。
with语句的语法:
with open(file_path, "mode") as f:
# do something
实际上,Python打开文件时会为其分配一个文件描述符,with语句执行过程中将会自动关闭这个文件描述符,无需手动调用close()
函数。
示例10:使用with语句读取文件内容
try:
with open("test.txt", "r", encoding="utf-8") as f:
data = f.read()
print(data)
except IOError:
print("打开文件失败!")
示例11:使用with语句写入文件内容
try:
with open("test.txt", "w", encoding="utf-8") as f:
f.write("Hello, World!")
except IOError:
print("写入文件失败!")
文件常用函数实例分析
Python提供了大量的文件操作函数,下面为你介绍一些常用的函数。
获取文件或目录信息
os.path.isfile(path)
:判断给定路径是否为文件,返回布尔值。os.path.isdir(path)
:判断给定路径是否为目录,返回布尔值。os.path.exists(path)
:判断给定路径是否存在,返回布尔值。os.path.getsize(path)
:获取文件大小,返回字节数。os.path.getatime(path)
:获取文件的最近访问时间。os.path.getmtime(path)
:获取文件的最近修改时间。
示例12:获取文件大小
import os
size = os.path.getsize("test.txt")
print(size)
删除文件或目录
os.remove(path)
:删除文件。os.rmdir(path)
:删除空目录。shutil.rmtree(path)
:删除目录及其所有子目录和文件。
示例13:删除文件
import os
os.remove("test.txt")
示例14:删除目录
import shutil
shutil.rmtree("test_dir")
改变文件名或移动文件
os.rename(src, dst)
:将文件或目录从src重命名为dst。shutil.move(src, dst)
:将文件或目录从src移动到dst。
示例15:重命名文件
import os
os.rename("test.txt", "test_rename.txt")
示例16:移动文件
import shutil
shutil.move("test.txt", "./new_dir/test.txt")
以上就是Python文件读写的基础,希望能帮助到你。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python打开文件、文件读写操作、with方式、文件常用函数实例分析 - Python技术站