#以下内容均在正常打开文件的情况下运行

一、列表格

模式 可做操作 若文件不存在 是否覆盖
r 只能读 报错 ---
r+ 可读可写 报错
w 只能写 创建
w+ 可读可写 创建
a 只能写 创建 否,追加
a+ 可读可写 创建 否,追加
b -----(二进制读取方式) ---------(配合读写使用) -----

  其实这里的读写很好理解,但是对于a和a+,他们是文本追加(这里要注意覆盖并不是覆盖重复内容,而是覆盖全部内容)------也就是重写文件(回档,哈哈哈)

加不加b取决于文件的文本形式

2.1写文件加读取文件

#不追加,但是每次都会覆盖之前写的(任何字段都会覆盖,)
# with open('name.txt','w',encoding='utf8')as f:
# f.writelines("0001"+'\n'+'小明'+'\n'+'1701班') # with open('name.txt','r',encoding='utf8')as f:
# for line in f.readlines():
# print(line,end='')
#readlines()读取多行,就是有s和没有s的区别
# with open('demo2.txt','r',encoding='utf8')as f:
# for line in f.readlines():
# print(line,end='')

2.2文件的追加写入

文件读取
# with open('demo.txt','r',encoding='utf8')as f:
# for line in f.readlines():
# print(line,end='') # #文件追加写入
# with open('demo.txt','a+',encoding='utf8')as f:
# f.write('\n')
# f.write('you are a boy!')

2.3二进制的读取(简单解释一下)

读文件 进行读文件操作时,直到读到文档结束符(EOF)才算读取到文件最后,Python会认为字节\x1A(26)转换成的字符为文档结束符(EOF),

      故使用'r'进行读取二进制文件时,可能会出现文档读取不全的现象。 

示例:
     二进制文件中存在如下从低位向高位排列的数据:7F 32 1A 2F 3D 2C 12 2E 76
     如果使用'r'进行读取,则读到第三个字节,即认为文件结束。
     如果使用'rb'按照二进制位进行读取的,不会将读取的字节转换成字符,从而避免了上面的错误。

python r r+;w w+;a a+;以及加不加b区别的更多相关文章

  1. (二十八)fopen与读写的标识r,r+,rb+,rt+,w+.....

    fopen与读写的标识r,r+,rb+,rt+,w+..... 函数简介 函数功能: 打开一个文件 函数原型:FILE * fopen(const char * path,const char * m ...

  2. 文件操作:w,w+,r,r+,a,wb,rb

    1.文件操作是什么? 操作文件: f = open("文件路径",mode="模式",encoding="编码") open() # 调用操 ...

  3. 【技术翻译】支持向量机简明教程及其在python和R下的调参

    原文:Simple Tutorial on SVM and Parameter Tuning in Python and R 介绍 数据在机器学习中是重要的一种任务,支持向量机(SVM)在模式分类和非 ...

  4. (数据科学学习手札22)主成分分析法在Python与R中的基本功能实现

    上一篇中我们详细介绍推导了主成分分析法的原理,并基于Python通过自编函数实现了挑选主成分的过程,而在Python与R中都有比较成熟的主成分分析函数,本篇我们就对这些方法进行介绍: R 在R的基础函 ...

  5. (数据科学学习手札05)Python与R数据读入存出方式的总结与比较

    在数据分析的过程中,外部数据的导入和数据的导出是非常关键的部分,而Python和R在这方面大同小异,且针对不同的包或模块,对应着不同的函数来完成这部分功能: Python 1.TXT文件 导入: 以某 ...

  6. python文件操作各种模式和常用方法总结r r+ rb r+b

    1.读,r r+ rb r+b read() 全部读取 read(n) 读取一部分 r模式下:n 个字符. rb模式下:n个 字节. readline() 按行读取. readlines() 返回个列 ...

  7. Python 和 R 数据分析/挖掘工具互查

    如果大家已经熟悉python和R的模块/包载入方式,那下面的表查找起来相对方便.python在下表中以模块.的方式引用,部分模块并非原生模块,请使用 pip install * 安装:同理,为了方便索 ...

  8. 深入对比数据科学工具箱:Python和R之争

    建议:如果只是处理(小)数据的,用R.结果更可靠,速度可以接受,上手方便,多有现成的命令.程序可以用.要自己搞个算法.处理大数据.计算量大的,用python.开发效率高,一切尽在掌握. 概述 在真实的 ...

  9. Error : Must specify a primary resource (JAR or python or R file)

    spark-submit 报错:must specify resource 取消关注 | 1 ... 我的submit.sh内容: /bin/spark-submit \ --class abc.pa ...

随机推荐

  1. hdu 5810 Balls and Boxes 二项分布

    Balls and Boxes Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

  2. 小程序 swiper 轮播图滚动图片 + 视频

    直奔代码主题wxml: <view class="test_box"> <swiper indicator-dots="{{indicatorDots} ...

  3. flask框架(七): flask模板

    1.模板的使用 Flask使用的是Jinja2模板,所以其语法和Django无差别 2.自定义模板方法 Flask中自定义模板方法的方式和Bottle相似,创建一个函数并通过参数的形式传入render ...

  4. 这一次,彻底弄懂「Java字节码文件」

    提前祝福各位读者

  5. Java线程之生命周期

    简述 以下类图展示了线程生命周期中不同的状态.我们可以创建一个线程并启动它,但是线程状态从Runnable.Running.Blocked等状态的变化取决于系统线程调度器,java本身并不能完全控制. ...

  6. react搭建项目

    1.创建react项目 使用react脚手架create-react-app npm install -g create-react-app create-react-app my-app cd my ...

  7. Python - 工具:将大图切片成小图,将小图组合成大图

    训练keras时遇到了一个问题,就是内存不足,将 .fit 改成 .fit_generator以后还是放不下一张图(我的图片是8192×8192的大图==64M).于是解决方法是将大图切成小图,把小图 ...

  8. Linux停止被占用的端口

    查找被占用的端口:netstat -lnp|grep 80 查看80端口被那些服务占用. kill掉该进程 kill -9 5574 然后在去查看一下80被占用的情况netstat -lnp|grep ...

  9. 解决分页插件ClassNotFoundException: org.springframework.boot.bind.RelaxedPropertyResolver

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.github.p ...

  10. MySort作业与IO-Myhead

    一.MySort 1.题目要求 模拟实现Linux下Sort -t : -k 2的功能. 要有伪代码,产品代码,测试代码(注意测试用例的设计) 参考 Sort的实现.提交博客链接. 2.产品代码 im ...