Python——文件读取与写入

╰+攻爆jí腚メ 2021-09-27 07:44 571阅读 0赞

我们经常需要从文件中读取数据,因此学会文件的读取很重要,下面来介绍一下文件的读取工作:

poem.txt

  1. Shall I compare thee to a summer's day?
  2. 我怎么能够把你来比作夏天
  3. Thou art more lovely and more temperate。
  4. 你不独比它可爱也比它温婉
  5. Rough windsdo shakethe darling buds of May,
  6. 狂风把五月宠爱的嫩蕊作践
  7. And summer's lease hath all too short a date
  8. 夏天出赁的期限又为免太短

1、读取文件

单纯的读取一个文件,我们首先要打开文件,然后读取里面的内容,使用read()方法,读取文件的全部内容,然后把读取出来的内容进行赋给一个变量;

  • with方式打开文件:
  • open方法直接打开并读取文件,不使用with语句,此方法直接读取文件,但是要记得关闭文件,我们要知道,我们操作的是什么,目的是什么,如果我们只是单纯的读取文件的内容,而不去修改它,那么就单纯使用open()方法,不用第二参数即可。

    -- coding: UTF-8 --

    import sys
    import json
    reload(sys)
    sys.setdefaultencoding(‘utf-8’)

    def file_Reader():

    1. #with方式读取
    2. with open('poem.txt') as file_object:
    3. #读取整个文件
    4. contents = file_object.read()
    5. print(type(contents))
    6. print(contents)
    7. #
    8. #逐行读取
    9. # for line in file_object:
    10. # print line
    11. #读取文件内容到一个列表中
    12. # lines = file_object.readlines()
    13. # print lines

    *

    1. #直接open文件,记得close文件
    2. # f = open('poem.txt')
    3. # 读取整个文件
    4. # contents = f.read()
    5. # print(contents)
    6. #组行读取
    7. # for line in f:
    8. # print line.strip()
    9. # 读取文件内容到一个列表中
    10. # lines = file_object.readlines()
    11. # print lines
    12. # f.close()

    if name == “main“:

    1. file_Reader()

二者异同点:

  • 方法1,with 语句在不再需要访问文件后将其关闭。直接使用open()方法打开文件,但不需要自己调用close()关闭文件;
  • 方法2,直接使用open()方法打开文件,要自己调用close()方法关闭文件。如果程序存在bug,导致close()语句未执行,文件将不会关闭。这看似微不足道,但未妥善地关闭文件可能会导致数据丢失或受损。如果在程序中过早地调用close(),我们会发现需要使用文件时它已关闭(无法访问),这会导致更多的错误。并非任何情况下都能轻松地确定关闭文件的恰当时机。
  • 两种方法都可打开文件,方法1with打开的方式更安全一些,不需要我们去确定什么时候关闭文件。
  • 两种方法在打开文件后,都可读取整个文件内容/逐行读取/把文件读取到一个列表中。

二、写入文件

  1. 保存数据的最简单的方式之一是将其写入到文件中。

读取和写入文件有两种方法,一种是with语句打开文件;另一种是open()和close()结合使用打开和读取文件。

  1. # -*- coding: UTF-8 -*-
  2. import sys
  3. import json
  4. reload(sys)
  5. sys.setdefaultencoding('utf-8')
  6. def file_Writer():
  7. #with方式写入文件内容
  8. # with open("testWriter.txt","w") as f:
  9. # f.write("hello,world")
  10. #
  11. #open()和close()结合使用打开文件
  12. f = open("testWriter.txt", "w")
  13. f.write("hello,world666")
  14. f.close()
  15. if __name__ == "__main__":
  16. # file_Reader()
  17. file_Writer()




























打开方式    
“r” 读取模式 默认的只读模式打开文件
“w” 写入模式 写入模式要覆盖之前文件里面的内容
“a” 附加模式  
“r+” 可读取和写入文件的模式  

打开文件时,可指定打开模式,如果我们要写入的文件不存在,函数open()将自动创建它。然而,以写入(‘w’)模式打开文件时千万要小心,因为如果指定的文件已经存在,Python将在返回文件对象前清空该文件。所以使用写入模式(‘w’)的时候一定要小心。

发表评论

表情:
评论列表 (有 0 条评论,571人围观)

还没有评论,来说两句吧...

相关阅读

    相关 文件读取写入

    > 此文章主要是通过流将文件的内容读取出来和将上传的文件保存到本地(还有不足之处,后续更新) 一、文件的读取 > 注:方法参数为文件路径+文件全名(例:D:\\file