• 文件操作


    一、打开文件的模式

    文件操作分为3个过程,文件打开,操作文件,关闭文件

    f=open('1.txt','r',encoding='utf-8')  #打开文件
    data=f.read()               #操作文件
    f.close()                 #关闭文件
    print(data)

    每次都要关闭文件很麻烦,而且有可能在实际工作操作的时候忘了关闭文件,所以我们用另一种操作,用with语句来操作,这样就不需要手动来关闭文件。

    # 用with语句打开,不需要自动关闭
    with open('1.txt','r',encoding='utf-8') as f:
        print(f.read())

    文件打开方式:

    #1. 打开文件的模式有(默认为文本模式):
    r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
    w,只写模式【不可读;不存在则创建;存在则清空内容】
    a, 只追加写模式【不可读;不存在则创建;存在则只追加内容】
    
    #2. 对于非文本文件,我们只能使用b模式,"b"表示以字节的方式操作(而所有文件也都是以字节的形式存储的,使用这种模式无需考虑文本文件的字符编码、图片文件的jgp格式、视频文件的avi格式)
    rb 
    wb
    ab
    注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码
    
    #3. 了解部分
    "+" 表示可以同时读写某个文件
    r+, 读写【可读,可写】,写的时候在末尾追加,指针移到到最后
    w+,写读【可读,可写】,存在的话先清空 一写的时候指针到最后
    a+, 写读【可读,可写】打开的时候指针已经移到最后,写的时候不管怎样都往文件末尾追加
    
    
    x, 只写模式【不可读;不存在则创建,存在则报错】
    x+ ,写读【可读,可写】
    xb

    二、操作文件的方法

    #掌握
    f.read() #读取所有内容,光标移动到文件末尾
    f.readline() #读取一行内容,光标移动到第二行首部
    f.readlines() #读取每一行内容,存放于列表中
    
    f.write('1111
    222
    ') #针对文本模式的写,需要自己写换行符
    f.write('1111
    222
    '.encode('utf-8')) #针对b模式的写,需要自己写换行符
    f.writelines(['333
    ','444
    ']) #文件模式
    f.writelines([bytes('333
    ',encoding='utf-8'),'444
    '.encode('utf-8')]) #b模式
    
    #了解
    f.readable() #文件是否可读
    f.writable() #文件是否可读
    f.closed #文件是否关闭
    f.encoding #如果文件打开模式为b,则没有该属性
    f.flush() #立刻将文件内容从内存刷到硬盘
    f.name
  • 相关阅读:
    表单
    html 基础代码
    thread
    流的存入读取
    异常

    Android——多线程编程练习题
    Android——进度对话框
    安卓3个练习题
    Android—对话框
  • 原文地址:https://www.cnblogs.com/lishuangtu/p/8953279.html
Copyright © 2020-2023  润新知