Python中的文件处理

Python也支持文件处理,并允许用户处理文件,即读写文件,以及许多其他文件处理选项,以便对文件进行操作。文件处理的概念已经扩展到了各种其他语言中,但实现要么复杂,要么冗长,但与Python的其他概念一样,这里的这个概念也简单而简短。Python将文件视为文本或二进制文件,这一点很重要。每行代码都包含一系列字符,它们构成文本文件。文件的每一行都以一个特殊字符结尾,称为EOL或行尾字符,如逗号{、}或换行符。它结束了当前的一行,并告诉口译员新的一行已经开始。让我们从读和写文件开始。

null

open()函数的工作原理

在对文件执行任何读或写操作之前,首先我们必须打开该文件。为此,我们应该使用Python的内置函数open()

但是在打开时,我们必须指定模式,它代表打开文件的目的。

f = open(filename, mode)

其中支持以下模式:

  1. r: 打开现有文件进行读取操作。
  2. w: 打开现有文件进行写入操作。如果文件已经包含一些数据,那么它将被覆盖。
  3. a: 打开现有文件进行追加操作。它不会覆盖现有数据。
  4. r+: 将数据读写到文件中。文件中以前的数据不会被删除。
  5. w+: 写入和读取数据。它将覆盖现有数据。
  6. 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主页上,并帮助其他极客。 如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写评论

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享