美文网首页
Python3:文件读写

Python3:文件读写

作者: ACphart | 来源:发表于2018-07-16 19:29 被阅读48次

    文件读写模式

    使用open()函数

    • 以任何方式使用文件之前,都必须打开文件;打开文件使用open()函数,其返回一个文件对象
    • 打开模式,如下表
    实参符号 说明
    'r' 读取模式
    'w' 写入模式
    'a' 附加模式
    'r+' 读取和写入模式
    默认 只读模式

    读取文件

    with与open()

    with open('path\file_name') as file_obj:
        contents = file_obj.read()
        print(contents)
    
    • 关键字with在不需要再访问文件后将其关闭。
    • 你也可以调用open()和close()来打开和关闭文件,但这样做时,如果程序存在bug,导致close()语句未执行,文件将不会关闭,未妥善地关闭文件可能会导致数据丢失或受损,如果在程序中过早地调用close(),你会发现需要使用文件时它已关闭(无法访问),这会导致更多的错误。
    • 并非在任何情况下都能轻松确定关闭文件的恰当时机,但通过使用with,可让Python去确定在合适的时候自动将其关闭。
    • read()方法用以读取这个文件的全部内容,并将其作为一个长长的字符串存储在变量contents中。

    逐行读取

    • 以每次一行的方式检查文件
    with open('path\filename') as file_obj:
        for line in file_obj:
            print(line)
    
    • 读取文本文件时,所有的文本都解读成字符串,如果读取的是数字,并且要将其作为数值使用,就必须使用函数int()或float()将其转换为数值类型。

    写入文件

    写入空文件

    with open('path\filename', 'w') as file_obj:
        file_obj.write('I love Python.')
    
    • ‘w’实参指明以写入模式打开这个文件。如果你要写入的文件不存在,open()将自动创建它;如果文件存在,Python会先将文件清空再返回该文件对象。
    • write()方法将一个字符串写入文件。
    • Python只能将字符串写入文本文件。要将数值数据存储到文本文件中,必须先使用函数str()将其转换为字符串格式。

    写入多行

    • write()不会在你写入的文本末尾添加换行符,多次写入会挤成一行,可用如下方式解决:
    with open('path\filename', 'w') as file_obj:
        file_obj.write('I love Python.\n')
        file_obj.write('I love C++ too.\n')
    
    • 和显示到终端一样,还可以使用空格、制表符和空行来设置这些输出的格式。

    附加到文件

    • 如果要给文件添加内容,而不是覆盖原有内容,可以附加模式打开文件。若文件不存在,会创建一个空文件。
    with open('path\filename', 'a') as file_obj:
        file_obj.write('I love Java too.')
    

    相关文章

      网友评论

          本文标题:Python3:文件读写

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