美文网首页Python学习
python基础篇:文件处理

python基础篇:文件处理

作者: cf6d95617c55 | 来源:发表于2023-04-14 16:32 被阅读0次

    文件处理是许多应用程序的核心。例如,您可能需要从文本文件中读取数据,对数据进行分析和处理,然后将结果写回到另一个文件中。Python提供了许多内置函数和库,可用于读取和写入文件,以及对文件进行操作。

    Python的文件处理库包括内置函数和第三方库,如os、shutil、glob、csv和pickle等。这些库提供了许多函数和方法,可用于创建、读取、写入和操作文件和文件夹。这些库中的每一个都有其独特的优点和用途。

    在Python中,您可以使用open()函数打开一个文件。该函数接受两个参数:文件名和模式。模式可以是

    • 读取模式(r
    • 写入模式(w
    • 追加模式(a

    一旦打开了文件,您就可以使用各种函数和方法读取和写入数据。

    读取文件

    假设我们有以下文件,与 Python 位于同一文件夹中:

    Hello! Welcome to demofile.txt
    This file is for testing purposes.
    Good Luck!
    

    要打开文件,请使用内置open()函数。

    该open()函数返回一个文件对象,它有一个 read()读取文件内容的方法:

    f = open("demofile.txt", "r")
    print(f.read())
    

    如果文件位于不同的位置,则必须指定文件路径,如下所示:

    f = open("/home/welcome.txt", "r")
    print(f.read())
    

    默认情况下,该read()方法返回整个文本,但您也可以指定要返回的字符数:

    f = open("demofile.txt", "r")
    print(f.read(5))
    

    还可以可以使用以下方法返回一行readline():

    f = open("demofile.txt", "r")
    print(f.readline())
    

    完成文件后始终关闭文件是一个好习惯。

    关闭文件

    完成后关闭文件:

    f = open("demofile.txt", "r")
    print(f.readline())
    f.close()
    

    文件写入

    要写入现有文件,您必须向函数添加一个参数open():

    • a:追加 - 将追加到文件末尾

    • w:写入 - 将覆盖任何现有内容

    打开文件demofile2.txt并将内容附加到文件中:

    f = open("demofile2.txt", "a")
    f.write("Now the file has more content!")
    f.close()
    
    #open and read the file after the appending:
    f = open("demofile2.txt", "r")
    print(f.read())
    

    删除文件

    要删除一个文件,你必须导入 OS 模块,并运行它的 os.remove()函数:

    import os
    os.remove("demofile.txt")
    

    检查文件是否存在

    为避免出现错误,可能需要在尝试删除文件之前检查该文件是否存在:

    import os
    if os.path.exists("demofile.txt"):
      os.remove("demofile.txt")
    else:
      print("The file does not exist")
    

    删除文件夹

    要删除整个文件夹,请使用以下os.rmdir()方法:

    import os
    os.rmdir("myfolder")
    

    Python还提供了一些非常方便的库,如csv和pickle,可用于处理各种不同格式的文件。例如,csv库可用于读取和写入CSV文件,pickle库可用于序列化和反序列化Python对象。

    本文由mdnice多平台发布

    相关文章

      网友评论

        本文标题:python基础篇:文件处理

        本文链接:https://www.haomeiwen.com/subject/dmktjdtx.html