关于Python文件的一点小总结

文件知识点梳理

1.文件的概述:

  • 1.文件的基本定义:
    文件是用来存储数据的,文件是存储在外存中的
    若非存储介质损坏,文件可以永久存储数据.

  • 2.文件的存储形式:
    任何格式文件在计算机内部是以二进制形式字符序列存储的.

  • 3.操作文件的步骤:

    • 1.文件的打开;
      • open(“路径”,“方式”)
        当模式为"w"时,如果文件不存在,会先创建一个文件,然后以可写的方式打开;
        注意文件的路径问题,如果目录不存在会报错;
        关于文件的路径问题:可以用两个"\",也可以用"/"进行分隔;
        关于访问模式,可见E盘的文档操作文件夹;
        以二进制形式读写数据时,以二进制形式打开该文件,是字符串二进制数据;
        "w"与"a"区别:都是写,但是w会覆盖源文件.a是在结尾追加;
        “r+”/"w+"支持读写:区别是:以 "r+"方式打开时,若文件不存在会报错,以"w+"方式打开时,若文件不存在会创建新文件;
    • 2.文件的读写;
      • 读取方式:
        • 1.f.read() 不写参数,一次读取(一次全拿出来)全部数据文件,适用于数据比较少的情况.
        • 2.f.read(n) 一次读取n个字符 返回一个字符串类型的数据 读不完的会在当前相对位置接着读,并不会返回"0"位置
        • 3.f.readline(n) 一次读取一行,n表示读取一行中的几个字符.(复制时常用)
        • 4.f.readlines() 每一行作为列表的一个元素,输出列表.
    • 3.文件的关闭.
      • f.close()
        注:在Python中亦如此.
  • 4.文件的复制: ex:E:\exercise\day_08\day_08_文件的复制

    • 1.打开两个文件,一个只读(源文件),一个可写(目标文件);
    • 2.while无限循环读取文件中的数据,每次一行;
    • 3.把读到的一行数据写入;
    • 4.关闭两个文件.
  • 5.文件的定位读写:

    • 1.tell方法:
      获取当前的位置,f.tell()无参.
    • 2.seek方法: # Python3中非二进制文件offset和whence中至少有一个参数必须设置为0.
      # 也就是说,要修改非初始位置时,读写方式必须为二进制,即"rb"或"rb+"“rw+”
      修改当前的位置,f.seek(offset,whence)
      offset:偏移量
      whence:从何位置何方向:
      0:表示文件开头
      1:表示到当前位置
      2:表示文件末尾
    • 注:此时,如果想要让当前位置进行相对偏移,现在有两种方法:
      1:seek()方法;
      2:read()方法;让其读取几个字符,当前位置会发生改变.
  • 6.os方法:

    • 1.文件的重命名:
      os.rename(“旧名字”,“新名字”) 修改当前目录下的文件名字
    • 2.获取当前目录:
      os.getcwd() 返回当前文件的根目录,默认就是工程的根目录
    • 3.切换目录:
      os.chdir() 不写路径,默认是切换当前目录下的文件/写路径可以切换其他目录文件/文件存在会报错
    • 4.获得目录列表: 获得指定目录下的文件和文件夹的列表
      os.listdir() 里面无参传递:返回此目录下的文件列表.
      传参: 指定目录下的文件列表,包括隐藏文件
    • 5.删除文件夹: 如果目录下面有子文件或子文件夹,则报错.(若要删除,必须先清空)
      os.rmdir(目录名) 要想删除指定路径的文件,一定要写全目录名
    • 6.删除文件:
      os.remove(文件名) 如果文件不存在,会报错找不到文件.
    • 7.创建文件夹:
      os.mkdir(文件夹名字) 如果文件夹已经存在,则会报错已存在该文件.
  • 7.批量修改文件名:
    步骤:
    1.获取目标文件路径(os.chdir())
    2.获取当前文件列表,并设置一个变量用来接收其返回值.(file_list = os.listdir())
    3.遍历文件列表得到每个文件名
    4.边遍历边重命名.(os.rename())

  • 8.eval方法:
    可以把含有相关容器特征的字符串转成相关容器.

    • 语法:
      eval(source[, globals[, locals]]) -> value
    • 参数:
      source:一个Python表达式或函数compile()返回的代码对象
      globals:可选。必须是dictionary
      locals:可选。任意map对象
  • 9.repr()方法:

  • 将Python的变量和表达式转换为字符串表示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值