python文件操作

1.文件操作的函数:

  open("文件名(路径),mode="?",encoding="字符集")  ?表示的是文件操作的模式(如只读,只写,追加等) 字符集就是编码或者解码方式。

1 f = open("old",mode="r",encoding="utf-8")
2 s = f.read()
3 print(s)
4 f.close()  #每次对文件进行操作之后要关闭这个文件,否则在后面对这个文件进行删除操作的时候会出错。
5 #123456
6 #654321

 2.文件的模式:

  r(只读),w(只写),a(追加),r+(读加写),w+(写加读),rb(读取bytes),wb(写入bytes),ab(追加bytes),r+b(读加写入byte),w+b(写加读bytes),a+b(追加写读bytes)

    >1读 其实上面的文件函数就是读文件  

 f = open("呵呵呵", mode="r", encoding="utf-8")
 for line in f:  # 文件是一个可迭代对象
    print(line.strip()) # 一行一行的处理数据
 f.close()

    >2写 如果源文件不存在就会创建新文件,如果有源文件那么就会先清空源文件再写入。

        写入的时候需要自己手动添加换行符

    >3所有带b的操作都是对非文本的操作,在上面的函数格式中就不能添加encoding了。

  3.文件的常用操作:

  seek(偏移量,位置)

  seek(0)是开头

  seek(0,2)在末尾的偏移量是0

  tell()找到光标所在的位置

  truncate()如果不填参数就是从文件开头截断到光标所在的位置,如果添加参数了就是从头截断到参数位置

  4.修改文件

   因为直接修改文件是不允许的,所以要按一下步骤去修改问价。

    >1引入os模块

    >打开目标问价,mode=r

    >打开副本文件,mode=w

    >从r中读取内容进行修改,写入到副本文件中

    >删除源文件

    >重命名副本

    

import os
with open("old",mode="r",encoding="utf-8") as f1,
    open("new",mode="w",encoding="utf-8") as f2:
    for line in f1:
        line = line.strip().replace("alex","老板")
        f2.write(line)
os.remove("old")
os.rename("new","old")
原文地址:https://www.cnblogs.com/qq849784670/p/9432333.html