Python 文件处理:如何创建文本文件、读取、写入、打开
Python 文件处理
在 Python 中,不需要导入外部库来读写文件。 Python 提供了用于创建、写入和读取文件的内置函数。
在这篇 Python 文件处理教程中,我们将学习:
- 如何在 Python 中打开文本文件
- 如何在 Python 中创建文本文件
- 如何在 Python 中追加文本文件
- 如何在 Python 中读取文件
- 如何在 Python 中逐行读取文件
- Python 中的文件模式
如何在 Python 中打开文本文件
要打开文件,需要使用内置的 open
功能。 Python文件打开函数返回一个文件对象,其中包含方法和属性来执行Python中打开文件的各种操作。
Python打开文件函数语法
file_object = open("filename", "mode")
在这里,
- 文件名: 给出文件对象已打开的文件的名称。
- 模式: 文件对象的属性告诉你文件是在哪种模式下打开的。
这些模式的更多细节在下面解释
如何在 Python 中创建文本文件
使用Write to file Python,您可以使用代码创建一个.text文件(guru99.txt),我们在这里演示:
步骤 1) 打开 .txt 文件
f= open("guru99.txt","w+")
- 我们声明了变量“f”来打开一个名为 guru99.txt 的文件。 Open 有 2 个参数,我们要打开的文件和一个字符串,表示我们要对文件执行的权限或操作的种类
- 这里,我们在参数中使用了“w”字母,表示 Python 写入文件,如果库中不存在文件,它将在 Python 中创建文件
- 加号表示 Python 创建文件操作的读取和写入。
步骤 2) 将数据输入文件
for i in range(10): f.write("This is line %d\r\n" % (i+1))
- 我们有一个运行在 10 个数字范围内的 for 循环。
- 使用 写 向文件中输入数据的函数。
- 我们要在文件中迭代的输出是“这是行号”,我们用 Python 写文件函数声明它,然后是百分比 d(显示整数)
- 所以基本上我们是输入我们正在编写的行号,然后将它放入一个回车符和一个换行符
步骤 3) 关闭文件实例
f.close()
- 这将关闭存储的 guru99.txt 文件的实例
以下是 Python 示例中创建文本文件的代码执行后的结果:
<中心>
<图>如何在 Python 中创建文本文件
图>
当您在我们的案例“guru99.txt”中单击您的文本文件时,它将看起来像这样
<中心>
<图>如何在 Python 中创建文本文件的示例
图>
如何在 Python 中追加文本文件
您还可以在现有文件或新文件中追加/添加新文本。
步骤 1)
f=open("guru99.txt", "a+")
再次,如果您可以在代码中看到一个加号,则表示如果该文件不存在,它将创建一个新文件。但是在我们的例子中,我们已经有了文件,所以我们不需要为 Python 追加到文件操作创建一个新文件。
步骤 2)
for i in range(2): f.write("Appended line %d\r\n" % (i+1))
这将以追加模式将数据写入文件。
<中心>
<图>如何在 Python 中追加文本文件
图>
您可以在“guru99.txt”文件中看到输出。代码的输出是通过 Python 追加到文件操作,在较早的文件中追加了新数据。
<中心>
<图>如何在 Python 中追加文本文件的示例
图>
如何在 Python 中读取文件
您可以通过在“读取模式”(r) 中调用 .txt 文件来读取 Python 中的文件。
步骤 1) 以读取模式打开文件
f=open("guru99.txt", "r")
步骤 2) 我们在代码中使用 mode 函数来检查文件是否处于打开模式。如果是,我们继续进行
if f.mode == 'r':
步骤 3) 使用 f.read 读取文件数据并将其存储在变量内容中,以便在 Python 中读取文件
contents =f.read()
第 4 步) 打印Python读取文本文件的内容
以下是读取文件 Python 示例的输出:
<中心>
<图>如何在 Python 中读取文件
图>
如何在 Python 中逐行读取文件
如果您的数据太大而无法读取,您也可以逐行读取 .txt 文件。 readlines() 代码将以易于阅读的模式隔离您的数据。
<中心>
<图>如何在 Python 中逐行读取文件
图>
运行代码时 (f1=f.readlines()) 要在 Python 中逐行读取文件,它将分隔每一行并以可读格式显示文件。在我们的例子中,该行很短且可读,输出看起来类似于读取模式。但是如果有一个复杂的数据文件不可读,这段代码可能会有用。
Python 中的文件模式
以下是各种 Python 中的文件模式 :
模式 | 说明 |
---|---|
‘r’ | 这是默认模式。它打开文件以供阅读。 |
‘w’ | 此模式打开文件进行写入。 如果文件不存在,则创建一个新文件。 如果文件存在,则截断文件。 |
‘x’ | 创建一个新文件。如果文件已经存在,则操作失败。 |
‘一个’ | 以追加模式打开文件。 如果文件不存在,则创建一个新文件。 |
‘t’ | 这是默认模式。它以文本模式打开。 |
‘b’ | 这将以二进制模式打开。 |
‘+’ | 这将打开一个文件进行读写(更新) |
这是Python print() 到文件示例的完整代码
Python 2 示例
def main(): f= open("guru99.txt","w+") #f=open("guru99.txt","a+") for i in range(10): f.write("This is line %d\r\n" % (i+1)) f.close() #Open the file back and read the contents #f=open("guru99.txt", "r") # if f.mode == 'r': # contents =f.read() # print contents #or, readlines reads the individual line into a list #fl =f.readlines() #for x in fl: #print x if __name__== "__main__": main()
Python 3 示例
下面是另一个 Python print() 到文件示例:
def main(): f= open("guru99.txt","w+") #f=open("guru99.txt","a+") for i in range(10): f.write("This is line %d\r\n" % (i+1)) f.close() #Open the file back and read the contents #f=open("guru99.txt", "r") #if f.mode == 'r': # contents =f.read() # print (contents) #or, readlines reads the individual line into a list #fl =f.readlines() #for x in fl: #print(x) if __name__== "__main__": main()
总结
- Python 允许您读取、写入和删除文件
- 使用函数 open(“filename”,”w+”) 用于 Python 创建文本文件。 + 告诉 Python 解释器打开具有读写权限的 Python 文本文件。
- 要将数据附加到现有文件或 Python 打印到文件操作,请使用命令 open(“Filename”, “a “)
- 使用 Python 从文件读取函数读取文件的全部内容
- 使用readlines函数逐一读取文件内容。
Python