Python------补充部分文件操作

文件操作

  1. 语法

    # f = open("文件路径", mode="模式", encoding="编码")
    # open()   调用操作系统打开文件
    # mode     对文件的操作方式
    # encoding 文件的编码  --  存储编码要统一
    #           win -- 默认gbk
    #           linux,mac -- 默认utf-8
    # f        文件句柄 -- 操作文件的途径
    # 另一种打开文件的方式: 帮助自动关闭文件;可以同时开多个文件,用逗号隔开;也可以同时操作一个文件
    with open("a", mode="r", encoding="utf-8") as f,\
         open("b", mode="w", encoding="utf-8") as f1: 
    
    import os
    print(os.getcwd()) # 查看当前工作路径
    os.remove() # 删除文件
    os.rename() # 更改文件名.(旧名,新名)
  2. 模式

    • # r
      f = open("a", mode="r", encoding="utf-8")
      contend = f.read()   # 全部读取
      print(contend)
      print(f.read(3))     # 字符读取
      print(f.readline())  # 读取一行,()内可以加入需要读取本行的几个字符
      print(f,randlines()) # 读取每一行,存储到列表中
      for line in f:       # 一行一行读取  -- 防止内存溢出
           print(line)
      
      # rb -- 读非文本文件,不能指定编码,
      f = open("a", mode="rb")
      print(f.read(3))     # 读取3个字节
      
      # r+ -- 读写 -- 先读后写
      f = open("a", mode="r+", encoding="utf-8")
      print(f.read())
      f.write("你好啊")
      f.flush()
      f.close()            # 关闭文件,释放内存
      
      # r+b
    • # w 清空写 -- 没有文件就创建,有就打开,先清空,再写入
      f = open("a", mode="w", encoding="utf-8")
      f.write("乳娃娃")  # 不能写入int
      f.flush()
      f.close()
      
      # wb
      # w+ -- 先清空,写入,再读.用不着
      # w+b
      # a 追加写 -- 文件末尾写入
      f = open("a", mode="a", encoding="utf-8")
      f.write("啊啊啊啊啊啊啊,好烦啊")
      f.flush()
      f.close()
      
      # ab
      # a+ -- 追加读,光标默认在末尾
      f = open("a", mode="a+", encoding="utf-8")
      print(f.read())
      f.write("真的废物")
      
      # a+b
  3. 其他操作

    • 绝对路径 -- 从磁盘的根处查找

    • 相对路径 -- 相对于当前文件进行查找

    • tell() -- 查看光标位置,单位是字节

    • seek(偏移量,起始位置) -- 起始位置默认0--开头,1--当前位置,2--末尾

      总结

# open()  # 打开
    # close 要关闭文件
    # 写模式下需要刷新  flush()

    # r 只读
    #   read(3)   看对文件操作的模式来判断是字符还是字节
    #   mode = 'r' 时候是字符
    #   mode = 'rb' 时候是字节
    # readline()   读取一行,自带\n(换行)
    # readlines()  读取全部以一行一行的形式存在放列表里

    # a 追加
        #文件的末尾写
    # w 覆盖写
        # 先清空文件,后写入文件

    # rb ,wb ab自己试
        # 只要是带b的模式,注意的是不是不能有encoding

    # a+
    #   追加 + 读     注意 不管怎么读都读不到内容,除非移动光标

    # w+
    #   覆盖写 + 读   注意:先写后读  先读后写   除非移动光标

    # r+
    #   读 + 写      注意: 先读后写

    # 其他操作

    # seek()  移动光标
    #   0,0    开头
    #   0,1    当前
    #   0,2    末尾

    # 3 如果是文字就移动一位,如果是英文就移动3位

    # tell() 查看光标 光标是按照字节数的

    # truncate()  截取  内容是字节数


# 文件修改
import os  # 导入  os和操作系统相关

# os.rename()  # 重命名  第一个参数旧的名字,第二个是新的名字
# os.remove()    # 删除这个文件  字符串


# with open('t1','r',encoding='utf-8')as f,\
#       open('t2','w',encoding='utf-8')as f1:


# 路径:

# 绝对路劲: 从磁盘根目录开始查找
# 相对路劲: 相对于某个东西来查找就是相对路径
#   返回上一级 ..\
# c:\user\...    可以把单个\写成双\\
# 在路径的前面加一个r
# 以上两种就是转义

转载于:https://www.cnblogs.com/hql1117/p/11069678.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值