• python全栈day8


    一 文件操作

    1.文件操作初识
     打开文件需要什么?
      1)文件路径
      2)编码方式:utf-8,gbk
      3)操作方式:只读,只写,写读,读写,追加
    格式:
      f = open('文件路径',encoding = '编码方式',mode = '操作方式')
       1)f,变量f_obj,f_handler,f_h.fh,文件句柄
       2)open(),python的内置函数(内部调用的事windows的系统命令)

    二 读

    模式:
    1 r模式
    对于r模式mode可以默认不写
    常出现的问题:
      1)编码不一致的问题:解决方式是将文件编码改为utf-8,或者在python中用一致的编码方式。
      2)路径问题报错:解决方式是在整个路径最前面加‘r’,每个反斜杠变成两个
      3)绝对路径和相对路径
    绝对路径:从根目录下开始找的路径
    相对路径:在文件夹内找
    2 rb模式
    在文件操作中凡是带b字母,都是与非文字类文件相关的。
    以bytes类型打开。
    3 r+模式
    读写模式,先读后写,写的含义是追加,不是先清空再写
    无论读文件里的什么内容,读多少,都是在文件后追加
    而不读的话,光标就会从文件开头开始进行覆盖,写多少覆盖多少
    4 r+b模式
    方式:
    f.read():全部读取
    f.read(n):读指定个字符,在rb模式下,操作的单位是字节
    f.readline():按行读取
    f.readlines():返回一个列表,元素是每一行的数据
    for循环(最优的方法)

    三 写

    没有文件时,创建文件也要写。
    如果有文件,先清空再写入。
    模式:
    1 w模式
    f = open('文件操作2',encoding = 'utf-8',mode = 'w')
    f.write('深圳骑士计划一期')
    f.close
    2 wb模式
    3 w+模式
    写读模式,先清空文件写入,然后读取光标后的内容,但是没有什么实际含义
    4 w+b模式

    四 追加

    没有文件创建文件,也要写
    在后面直接追加,不会换行,要换行加' '
    模式:
    1)a模式
    2)ab模式
    3)a+模式
    追加读,追加后再读,光标在最后,要读,必须移动光标
    4)a+b模式

    五 文件操作其他方法

      1)移动光标
    seek() 无论r和rb模式都是按照字节去移动光标
    把光标调整到开头seek(0)
    把光标调整到结尾seek(0,2)
      2)readable(),writeable()
    判断是否可读,是否可写。
      3)tell()
    获取光标的位置。应用于断点续传。
      4)truncate()
    截取数据,必须要在r+,a+模式下操作,不能在w模式下操作,对原文件进行截取,直接改变原文件
      5)read(n)
    在r模式下,n的单位为字符,在rb模式下n的单位为字节

    六.文件的改操作

    1,以读模式打开原文件,产生一个文件句柄f1。
    2,以写模式创建一个新文件,产生一个文件句柄f2。
    3,读取原文件内容,进行修改,并写入。
    4,将原文件删除。
    5,将新文件重命名为原文件。
    分类:
    1,一次性将文件全部读出,全部改完
    2,一行一行的改文件

    补充:

    对于不想或者经常忘记关闭文件的操作人员,推荐使用with
    格式:
    with open() as f1:
    print(f1.read())
    优点: 可以省去f.close()
    可以对多个文件同时进行操作
    缺点是:关闭文件时间不可控
  • 相关阅读:
    篝火晚会
    SECHS
    emmc4.X boot1 and boot2
    imx6Q Android7.1 Udisk Mount
    imx6Q 4.1.15 Perf support
    imx6Q 4.1.15 Kgtp support
    imx6Q 4.1.15 early console support
    imx6Q USB OTG Host/Device纯软件切换
    iMX6Q DDR Stresstest
    iMX6Q PowerSave调试
  • 原文地址:https://www.cnblogs.com/abner28/p/9470738.html
Copyright © 2020-2023  润新知