李成笔记网

专注域名、站长SEO知识分享与实战技巧

DAY5-step1 Python文件处理:创建,打开,追加,读取,写入

在Python中,不需要导入外部库来读取和写入文件。 Python提供了一个内置函数,用于创建,写入和读取文件。

如何打开文本文件

要打开文件,您需要使用内置的 open 功能。 open函数返回一个文件对象,该文件对象包含对文件执行各种操作的方法和属性。

语法

file_object  = open("filename", "mode") 

filename:给出文件对象已打开的文件的名称。

mode:文件对象的属性告诉您文件以哪种模式打开。

这些模式的更多详细信息如下

如何创建文本文件

使用Python,您可以使用代码创建.text文件(guru.txt)

第1步)

f= open("guru.txt","w+")
  • 我们声明了变量f来打开一个名为guru.txt的文件。 Open有两个参数,一个是我们要打开的文件,另一个是代表我们要对该文件执行的权限或操作的字符串。
  • 在这里,我们在参数中使用了“ w”字母,该字母表示可写,如果库中不存在该文件,则会创建一个文件
  • 加号表示读取和写入。

第2步)

for i in range(10):
     f.write("This is line %d\r\n" % (i+1))
  • 我们有一个for循环,其范围为10个数字。
  • 使用写功能将数据输入文件中。
  • 我们要在文件中迭代的输出是“This is line”,我们使用write函数声明它,然后使用%d(显示整数)进行声明

步骤3)

f.close() 

这将关闭存储的文件guru.txt的实例

这是代码执行后的结果

当您在“ guru.txt”中单击文本文件时,它将看起来像这样

如何将数据追加到文件

您还可以将新文本追加/添加到现有文件或新文件中。

第1步)

f=open("guru.txt", "a+")

再次如果您在代码中看到加号,则表明如果不存在,它将创建一个新文件。 但是在我们的情况下,我们已经有了文件,因此不需要创建新文件。

第2步)

for i in range(2):
     f.write("Appended line %d\r\n" % (i+1))

这将以追加模式将数据写入文件。

您可以在“ guru.txt”文件中看到输出。 代码的输出是较早的文件附加了新数据。

如何读取文件

您可以通过在“读取模式”(r)中调用.txt文件来读取Python中的文件。

步骤1)在读取模式下打开文件

	f=open("guru99.txt", "r")

步骤2)我们在代码中使用mode函数来检查文件是否处于打开模式。 如果是,我们继续

	if f.mode == 'r':

步骤3)使用f.read读取文件数据并将其存储在变量contents中

	contents =f.read()

步骤4)打印内容

这是输出

如何逐行读取文件

如果您的数据太大而无法读取,则也可以逐行读取.txt文件。 readlines()代码将以易于使用的模式隔离您的数据。

当您运行代码(f1 = f.readlines())逐行读取文件或文档时,它将分隔每一行并以可读格式显示文件。 在我们的情况下,该行很短且可读,输出看起来类似于读取模式。 但是,如果存在无法读取的复杂数据文件,那么这段代码可能会很有用。

Python中的文件模式

以下是Python中的各种模式


这是完整的代码

Python 2 Example

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 Example

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()

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言