python中的文件操做

1、文件代开及修改

1. f = open("文件路径", mode="r、w、a", encoding("编码集"))

  1. 文件路径:能够是相对路径(在写项目时必定要用相对路径)也能够是绝对路径
  2. mode:r、w、a、rb、wb、ab、r+、w+、a+
  3. encoding:与文件对应的编码集
  4. f.close 对文件操做完成后要及时关闭,否则会一直占用系统内存
  5. 只能打开一个文件
  6. f 文件句柄,操做文件时的一个”把“

2. with open ("文件路径", mode="r、w、a", encoding("编码集")) as f1,open ("文件路径", mode="r、w、a", encoding("编码集")) as f2

  1. 面向对象中的上下文管理
  2. 文件路径:能够是相对路径(在写项目时必定要用相对路径)也能够是绝对路径
  3. mode:r、w、a、rb、wb、ab、r+、w+、a+
  4. encoding:与文件对应的编码集
  5. 能够打开多个文件,也能够同时将一个文件打开两次
  6. with open不用手动输入f.close
  7. f 文件句柄,操做文件时的一个”把“

3. 文件修改

import os编码

  1. os.remove(f1) 删除文件
  2. os.rename(f"old",”new“) 给文件重命名(和repalce用法相似)

2、文件的读和写(r、rb、w、wb、a、ab)

rb、rb、ab 不用指定编码集对象

1. r或rb

  1. f.read() 一次所有读出来,内存容易溢出,()内能够输入数字 数字表明要读取字符的个数,会随着字符个数换行
  2. f.readline() 一行一行的读,()内能够输入数字 数字表明要读取字符的个数,数字再大也不会读到下一行
  3. for i in f: 利用 for 循环一行一行读取全部内容
  4. f.readlines() 一次将全部内容读取到一个列表中,()内能够输入数字,可是根据数字范围定位到文件的对应行数,读取时只会一行为单位进行

2. w或rb

  1. 在第一次写的时候会清除文件全部的内容,只要不f.close就会一直继续日后写
  2. 若是要写的文件不存在会在选定路径里建立一个新的文件
  3. 写入的时候不能写入数字

3. a或ab

  1. 在文件的最后追加写

3、 文件的读写、写读、追加写读

1. 读写 r +

  1. 先写后读 写会从头开始而且会覆盖文件的内容,读会从写的结束位置开始(错误)
  2. 先读后写 读完后写会在文件最后开始写

2. 写读

  1. 先读后写,先写后读,都是清空写
  2. 除非本身手动移动光标否则怎么也读不到文件内容

3. 追加写读

  1. 先读后写,先写后读,都是在文件后面追加写

四文件的其余操做

  1. f.tell 查看光标的位置
  2. 光标的操做 seek
    • seek(0, 0) 把光标移动到文件的开始位置
    • seek(0, 1) 把光标移动到光标的当前位置
    • seek(0, 2) 把光标移动到文件的结束位置
    • seek(n) 把光标移动到距离开始位置n个字节的位置
相关文章
相关标签/搜索