在 Python 中,文件操作是一项罕用的工作。本节将介绍如何执行根本的文件操作,如读取、写入和追加数据。咱们将通过实例代码具体解说每个知识点。
5.1.1 关上文件
在对文件进行操作之前,咱们须要应用 open()
函数关上它。open()
函数承受两个参数:文件名(包含门路)和模式。以下是一些罕用的模式:
'r'
:只读模式(默认)'w'
:写入模式,如果文件不存在则创立,如果文件存在则清空内容'a'
:追加模式,如果文件不存在则创立,如果文件存在则在文件开端追加内容'x'
:独占创立模式,如果文件不存在则创立,如果文件存在则引发异样'b'
:二进制模式't'
:文本模式(默认)
以下是一个示例:
file = open("example.txt", "r")
这个示例中,咱们关上了一个名为 example.txt
的文件,模式为只读('r'
)。请留神,如果文件不存在,关上文件将引发 FileNotFoundError
异样。你能够应用 try
–except
语句捕捉这个异样。
5.1.2 读取文件
有多种办法能够从文件中读取数据。以下是一些罕用办法:
1. read()
read()
办法用于读取文件中的所有内容。以下是一个示例:
file = open("example.txt", "r")
content = file.read()
print(content)
file.close()
请留神,在操作实现后,咱们应用 close()
办法敞开文件。这是一个很好的做法,因为它能够确保立刻开释文件资源。
2. readline()
readline()
办法用于读取文件中的一行。以下是一个示例:
file = open("example.txt", "r")
line = file.readline()
print(line)
file.close()
3. readlines()
readlines()
办法用于读取文件中的所有行,并将它们作为字符串列表返回。以下是一个示例:
file = open("example.txt", "r")
lines = file.readlines()
print(lines)
file.close()
4. 应用 for
循环逐行读取
你还能够应用 for
循环逐行读取文件。以下是一个示例:
file = open("example.txt", "r")
for line in file:
print(line)
file.close()
5.1.3 写入文件
要将数据写入文件,咱们须要以写入模式('w'
)或追加模式('a'
)关上文件。而后,咱们能够应用 write()
办法将数据写入文件。以下是一个示例:
file = open("example.txt", "w")
file.write("Hello, World!")
file.close()
在这个示例中,咱们以写入模式关上了 example.txt
文件,将 "Hello, World!"
字符串写入了文件,而后敞开了文件。
5.1.4 应用 with
语句
应用 with
语句能够简化文件操作。with
语句会主动解决文件的关上和敞开,即便在产生异样时也是如此。以下是一个示例:
with open("example.txt", "r") as file:
content = file.read()
print(content)
在这个示例中,咱们应用 with
语句关上了 example.txt
文件,并将其内容读取到 content
变量中。当 with
语句块完结时,文件将主动敞开。
这些就是 Python 文件操作的基本知识。在理论编程中,你可能须要依据具体需要对这些操作进行组合和扩大。心愿这些示例能够帮忙你更好地了解文件操作,并为你的理论我的项目提供帮忙。
5.1.5 删除文件
要删除一个文件,咱们能够应用 Python 的 os
模块。以下是一个示例:
import os
filename = "example.txt"
if os.path.exists(filename):
os.remove(filename)
else:
print("The file does not exist.")
在这个示例中,咱们首先导入了 os
模块。而后,咱们查看文件是否存在。如果存在,咱们应用 os.remove()
函数删除文件;如果不存在,咱们打印一条提示信息。
请留神,在应用 os.remove()
函数删除文件时,须要确保文件已敞开,否则可能引发异样。
5.1.6 文件操作总结
咱们曾经介绍了 Python 中的根本文件操作,包含:
- 关上文件
- 读取文件
- 写入文件
- 敞开文件
- 应用
with
语句简化操作 - 删除文件
通过联合这些操作,你能够实现许多理论工作中的文件操作需要。心愿这些具体的示例对你有所帮忙。祝你学习顺利!
举荐浏览:
https://mp.weixin.qq.com/s/dV2JzXfgjDdCmWRmE0glDA
https://mp.weixin.qq.com/s/an83QZOWXHqll3SGPYTL5g