博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
文件处理的r,w,a模式
阅读量:5111 次
发布时间:2019-06-13

本文共 1247 字,大约阅读时间需要 4 分钟。

  文件处理的r,w,a模式。

  一、基本概念

    打开文件的模式有三种纯净模式:r(默认的)w a

    控制操作文件内容格式的两种模式:t(默认的) b

    大前提:tb模式均不能单独使用,必须与纯净模式结合使用

    t文本模式:

      1、读写文件都是以字符串为单位的

      2、只能针对文本文件

      3、必须指定encoding参数

    b二进制模式:

      1、读写文件都是以Bytes/二进制为单位的

      2、可以针对所有文件

      3、一定不能指定encoding参数

  二、打开文件模式详解

      1、r只读模式:在文件不存在是则报错,文件存在文件内指针直接跳到文件开头

        with open(r('a.txt'),mode='rt',encoding='utf-8') as f:

          print(f.readlines())

      2、w只写模式:在文件不存在时会创建空文档,文件存在会清空文件,文件指针跑到文件开头

        with open(r'a.txt',mode='wt',encoding='utf-8') as f:

          print(f.readable())

          print(f.writeable())

          f.write('你好')

          f.write('wocale')

          lines = ['1111','22222','333333']

          f.writelines(lines)

      3、a只追加模式:在文件不存在时会创建空文档,文件存在会将文件指针直接移动到文件末尾

        with open(r'c.txt',mode='at',encoding='utf-8') as f:

          f.write('你好啊')

 

      b:读写都是以二进制为单位

        with open(r'b.txt',mode='rb') as f:

          data = f.read()

          print(data.encode('utf-8'))

        

        with open(r'1.png',mode='rb') as f:

          data = f.read()

          print(data.encode('utf-8'))

        

        with open(r'd.txt',mode='wb') as f:

          f.write('你好啊'.encode('utf-8'))

 

转载于:https://www.cnblogs.com/xiaocaiyang/p/9681207.html

你可能感兴趣的文章
第19届Jolt大奖揭晓
查看>>
UWP学习记录8-设计和UI之控件和模式5
查看>>
MySQL 索引 总结
查看>>
VMware client 无法显示hardware中的信息,提示No new host data available. Data will be updated in 5 minutes....
查看>>
qt学习之路
查看>>
前端动态属性页面的 要用id做name 因为这样方便在提交表单时候取到值
查看>>
高并发唯一ID解决方案
查看>>
C语言学习
查看>>
长生生物狂犬病疫苗造假
查看>>
hive权限配置
查看>>
将文件从一台linux机器拷贝到多台的方法
查看>>
Makefile 一点一滴(二)—— 输出文件到指定路径
查看>>
Java多线程并发编程之原子变量与非阻塞同步机制
查看>>
CLR via C#学习笔记-第八章-扩展方法
查看>>
c# 封装
查看>>
QT高级编程技巧(一)-- 编写高效的signal & slot通信代码
查看>>
大道至简 第四章 读后随笔
查看>>
[Java] 資料輸入的差異性(System.in、BufferedReader、Scanner)
查看>>
【Internet History, Technology, and Security】第六讲心得
查看>>
关于JAVA
查看>>