Python也支持文件处理,并允许用户处理文件,即读写文件,以及许多其他文件处理选项,以便对文件进行操作。文件处理的概念已经扩展到了各种其他语言中,但实现要么复杂,要么冗长,但与Python的其他概念一样,这里的这个概念也简单而简短。Python将文件视为文本或二进制文件,这一点很重要。每行代码都包含一系列字符,它们构成文本文件。文件的每一行都以一个特殊字符结尾,称为EOL或行尾字符,如逗号{、}或换行符。它结束了当前的一行,并告诉口译员新的一行已经开始。让我们从读和写文件开始。
open()函数的工作原理
在对文件执行任何读或写操作之前,首先我们必须打开该文件。为此,我们应该使用Python的内置函数open()
但是在打开时,我们必须指定模式,它代表打开文件的目的。
f = open(filename, mode)
其中支持以下模式:
- r: 打开现有文件进行读取操作。
- w: 打开现有文件进行写入操作。如果文件已经包含一些数据,那么它将被覆盖。
- a: 打开现有文件进行追加操作。它不会覆盖现有数据。
- r+: 将数据读写到文件中。文件中以前的数据不会被删除。
- w+: 写入和读取数据。它将覆盖现有数据。
- a+: 从文件中追加和读取数据。它不会覆盖现有数据。
看看下面的例子:
Python3
# a file named "geek", will be opened with the reading mode. file = open ( 'geek.txt' , 'r' ) # This will print every line one by one in the file for each in file : print (each) |
open命令将以读取模式打开文件,for循环将打印文件中的每一行。
read()模式的工作原理
在Python中读取文件的方法不止一种。如果需要提取包含文件中所有字符的字符串,那么我们可以使用 文件读() .完整的代码如下所示:
Python3
# Python code to illustrate read() mode file = open ( "file.txt" , "r" ) print ( file .read()) |
另一种读取文件的方法是调用一定数量的字符,如以下代码中所示,解释器将读取存储数据的前五个字符,并将其作为字符串返回:
Python3
# Python code to illustrate read() mode character wise file = open ( "file.txt" , "r" ) print ( file .read( 5 )) |
使用write()模式创建文件
让我们看看如何创建文件以及写入模式的工作原理: 要操作该文件,请在Python环境中编写以下代码:
Python3
# Python code to create a file file = open ( 'geek.txt' , 'w' ) file .write( "This is the write command" ) file .write( "It allows us to write in a particular file" ) file .close() |
close()命令终止所有正在使用的资源,并释放该特定程序的系统。
append()模式的工作原理
让我们看看append模式是如何工作的:
Python3
# Python code to illustrate append() mode file = open ( 'geek.txt' , 'a' ) file .write( "This will add this line" ) file .close() |
文件处理中还有各种其他命令,用于处理各种任务,如:
rstrip(): This function strips each line of a file off spaces from the right-hand side.lstrip(): This function strips each line of a file off spaces from the left-hand side.
它的设计目的是在处理代码时提供更清晰的语法和异常处理。这就解释了为什么在适用的情况下,将它们与声明一起使用是一种良好的做法。这很有帮助,因为使用此方法打开的任何文件都会在完成一个文件后自动关闭,所以会自动清理。 例子:
Python3
# Python code to illustrate with() with open ( "file.txt" ) as file : data = file .read() # do something with data |
将write与with()函数一起使用
我们还可以使用write函数和with()函数:
Python3
# Python code to illustrate with() alongwith write() with open ( "file.txt" , "w" ) as f: f.write( "Hello World!!!" ) |
使用文件处理的split()
我们还可以使用Python中的文件处理来拆分行。这会在遇到空格时拆分变量。你也可以按照我们的意愿使用任何字符进行拆分。以下是代码:
Python3
# Python code to illustrate split() function with open ( "file.text" , "r" ) as file : data = file .readlines() for line in data: word = line.split() print (word) |
还有其他各种功能可以帮助操作文件及其内容。可以在Python文档中探索各种其他函数。
本文由 金莫伦卡 .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 写极客。组织 或者把你的文章寄去评论-team@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。 如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写评论