可参考;https://www.cnblogs.com/gengcx/p/6713646.html
主要内容:
1.只读
2.只写
3.追加
4.r+读写
5.w+写读
6.a+写读
7.其他
一、使用python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取文件句柄。
打开文件的方式:r,w,a,r+,w+,a+,rb,wb,ab,r+b,w+b,a+b默认的是r(只读)模式
二、只读操作(r,rb)
f = open(aa.txt,mode='r',encoding='utf-8')
content=f.read()
print(content)
f.close()
注意:encoding表示编码集,根据文件的实际保存编码进行获取数据,更多的时候使用的是utf-8
一种新的文件读取方式:

    2. rb.读取出的数据是字节bytes类型,所以一般用来读取非文本文件,比如MP3,图像
,在rb模式下,不能选择encoding
f = open(CCZ/aa.txt,mode='rb') # 文件夹CCZ下的aa文件 ../表示上一层文件夹
bs=f.read()
print(bs.decode("utf-8"))
f.close()
3. 相对路径和绝对路径
../表示上一层文件夹
4.读取文件的方法:
1.read() :将文件全部读取出来。 弊端:文件不宜过大
2.read(n) :读取n个字节,如果继续读取或从当前位置继续而不是从头开始
f = open(CCZ/aa.txt,mode='rb') # 文件夹CCZ下的aa文件 ../表示上一层文件夹
bs=f.read(3) # 读取3个字节
print(bs.decode("utf-8"))
f.close()
5 其他操作
5.1seek(n) 光标移动到n位置,移动的单位是byte,如果是utf-8的中文部分要是3的倍数
  一般,使用seek()都是移动到开头或者结尾
  seek(0)
  seek(0,2),seek()里面的第二个参数:从哪个位置进行偏移,默认是0,表示开头,1表示当前位置,2表示结尾

   
5.2 tell()使用tell()可以帮助我们获取当前光标在什么位置
f = open(CCZ/aa.txt,mode='r+') # 文件夹CCZ下的aa文件 ../表示上一层文件夹
f.seek(6) # 光标移动到6字节
bs=f.read(3) # 读取文件的3个字节
print(bs.decode("utf-8"))
f.close() 5.3 读取两个文件的内容。

  5.4 readline()一次读取一行数据,每次读取的数据末尾都会有一个\n,需要用strip()方法来去掉

												

day08读取文件的更多相关文章

  1. Java 创建文件夹和文件,字符串写入文件,读取文件

    两个函数如下: TextToFile(..)函数:将字符串写入给定文本文件: createDir(..)函数:创建一个文件夹,有判别是否存在的功能. public void TextToFile(fi ...

  2. C#读取文件为byte[]

    C#读取文件为byte[] 转载请注明出处 http://www.cnblogs.com/Huerye/ /// <summary> /// 读取程序生成byte /// </sum ...

  3. HTML5的File API读取文件信息

    html结构: <div id="fileImage"></div> <input type="file" value=" ...

  4. 关于一些对map和整行读取文件操作

    public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...

  5. 使用java读取文件夹中文件的行数

    使用java统计某文件夹下所有文件的行数 经理突然交代一个任务:要求统计某个文件夹下所有文件的行数.在网上查了一个多小时没有解决.后来心里不爽就决定自己写一个java类用来统计文件的行数,于是花了两个 ...

  6. Matlab 读取文件夹中所有的bmp文件

    将srcimg文件下的bmp文件转为jpg图像,存放在dstimg文件夹下 str = 'srcimg'; dst = 'dstimg'; file=dir([str,'\*.bmp']); :len ...

  7. JavaWeb中读取文件资源的路径问题

    在做javaweb开发的时候,我们可能会需要从本地硬盘上读取某一个文件资源,或者修改某一个文件,这个时候就需要先找到这个文件,然后用FileInputStrem等文件字节.字符流来将这个文件读取到内存 ...

  8. File API 读取文件小结

    简单地说,File API只规定怎样从硬盘上提取文件,然后交给在网页中运行的JavaScript代码. 与以往文件上传不一样,File API不是为了向服务器提交文件设计的. 关于File API不能 ...

  9. php函数fgets读取文件

    如果一个文件比较大,可以考虑用fgets函数 下面是个例子: #文件作用:fgets读取文件 $start_time = microtime(true); $file_name = "a.t ...

随机推荐

  1. 启动期间的内存管理之pagging_init初始化分页机制--Linux内存管理(十四)

    1 今日内容(分页机制初始化) 在初始化内存的结点和内存区域之前, 内核先通过pagging_init初始化了内核的分页机制. 在分页机制完成后, 才会开始初始化系统的内存数据结构(包括内存节点数据和 ...

  2. 微信小程序自动化测试--接口测试

    偷得一篇文章: postman测试微信小程序接口---postman https://www.sunzhongwei.com/using-the-postman-test-wechat-mini-ap ...

  3. 树莓派3b+ Ubuntu 16.04 MATA系统 ssh远程登陆后修改主机名、用户密码和用户名

    写在前面: 刚刚开始写博客,记录下自己的学习过程,备忘. 最近在使用树莓派做智能小车的开发,使用的是树莓派3b+,安装的是Ubuntu 16.04 MATA 系统,安装系统后需要修改主机名,登陆密码以 ...

  4. sklearn使用——梯度下降及逻辑回归

    一:梯度下降: 梯度下降本质上是对极小值的无限逼近.先求得梯度,再取其反方向,以定步长在此方向上走一步,下次计算则从此点开始,一步步接近极小值.需要注意的是步长的取值,如果过小,则需要多次迭代,耗费大 ...

  5. Seattle Traffic construction projects punlication

    Why are we making this changes? Construction projects will close some transit facilities to buses in ...

  6. Failed to start /etc/rc.d/rc.local Compatibility

    查看/var/log/message Jun :: root systemd: Started Network Manager. Jun :: root systemd: Starting LSB: ...

  7. 详解Linux双网卡绑定之bond0

    1.什么是bond? 网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术.Kernels 2.4.12及以后的版本均供bonding模块 ...

  8. System.Threading.Timer如何正确地被Dispose

    System.Threading.Timer是.NET中一个定时触发事件处理方法的类(本文后面简称Timer),它背后依靠的是.NET的线程池(ThreadPool),所以当Timer在短时间内触发了 ...

  9. UNICODE与ASCII

    1.ASCII的特点 ASCII 是用来表示英文字符的一种编码规范.每个ASCII字符占用1 个字节,因此,ASCII 编码可以表示的最大字符数是255(00H—FFH).这对于英文而言,是没有问题的 ...

  10. 毕业季,我的Linux求职之路

    秋招终于告一段落了,本硕的七年求学之路也快画上了句号.回首求职的这一段日子,痛苦并快乐着.感谢所有陪伴着我走过这一段路程的同学,所有的辛酸都值得铭记.求职的过程中在网上看了很多的求职经验,现在想写一篇 ...