关于Python文件读取时,默认把\r\n换成\n
Python在非二进制形式读取文件时,自动把\r\n换成\n.(window下换行是\r\n)
建立一个test1.txt文件,
- aaaa
- bbbb
1.在utf8方式下读取
读取四个字符
- 1 f=open('test1.txt','r',encoding='utf-8')
- 2 l1=f.read(4)
- 3 print(l1)
- 4 l=f.tell()
- 5 print(l)
- 6 f.close()
打印结果;
- 1 aaaa #读取四个字符
- 2 4 #光标移动四个字节
读取五个字符
- 1 f=open('test1.txt','r',encoding='utf-8')
- 2 l1=f.read(5) #无论read()还是readline()以及readlines()都一样
- 3 print(l1)
- 4 l=f.tell()
- 5 print(l)
- 6 f.close()
打印结果;
- 1 aaaa
- 2
- 3 6 #从这里可以看出光标移动了6个字节,Python默认把\r\n两个字符换成一个字符,也可以看出在碰到回车符时又往下读取了一个
2.在rb模式下读取
没有对换行进行转换
- 1 f=open('test1.txt','rb')
- 2 l1=f.read(5)
- 3 print(l1)
- 4 l=f.tell()
- 5 print(l)
- 6 f.close()
打印结果:
- 1 b'aaaa\r'
- 2 5
读取6个
- 1 f=open('test1.txt','rb')
- 2 l1=f.read(6)
- 3 print(l1)
- 4 l=f.tell()
- 5 print(l)
- 6 f.close()
- 1 b'aaaa\r\n'
- 2 6
3.readlines()读取更加明了
- f=open('test1.txt','r',encoding='utf-8')
l1=f.readlines()
print(l1)
l=f.tell()
print(l)
f.close()
运行结果:
['aaaa\n', 'bbbb']
10
关于Python文件读取时,默认把\r\n换成\n的更多相关文章
- Python文件读取和数据处理
一.python文件读取 1.基本操作 读取文件信息时要注意文件编码,文件编码有UFT-8.ASCII或UTF-16等. 不过在python中最为常用的是UTF-8,所以如果不特别说明就默认UTF-8 ...
- python文件读取和写入案例
python文件读取和写入案例 直接上代码吧 都是说明 百度上找了很多,最终得出思路 没有直接可以读取修改的扩展,只能先读取,然后复制一份,然后在复制出来的文件里面追加保存 然后删除读的那个,但是缺 ...
- Python——文件读取
我们经常需要从文件中读取数据,因此学会文件的读取很重要,下面来介绍一下文件的读取工作: 1.读取整个文件 pi_digits.text 3.1415926535 8979323846 ...
- python 文件读写时用open还是codecs.open
当我面有数据需要保存时,第一时间一般会想到写到一个txt文件中,当然,数据量比较大的时候还是写到数据库比较方便管理,需要进行网络传输时要序列化,json化.下面主要整理一下平时用的最多的写入到文件中, ...
- python文件命名时的注意点
在python中读取Excal文件,需要引用xlrd模块,因此建的这个python文件名为xlrd.py 部分代码如下: import xlrd import os newpath = os.chdi ...
- Python 文件读取
1. 最基本的读文件方法: # File: readline-example-1.py file = open("sample.txt") while 1: line = file ...
- python 文件读写with open模式r,r+,w,w+,a,a+的区别
模式 可做操作 若文件不存在 是否覆盖 r 只能读 报错 - r+ 可读可写 报错 是 w 只能写 创建 是 w+ 可读可写 创建 是 a 只能写 创建 否,追加写 a+ 可读可写 创建 否,追加写
- Python文件读取编码错误问题解决之(PyCharm开发工具默认设置的坑。。。)
刚接触Python学习,正准备做个爬虫的例子,谁知道代码一开始就遇到了一个大坑,狂汗啊. 问题是这样的:我通过代码爬取了博客园首页的HTML代码并存入到blog.txt文件当中,然后准备读取出来之后进 ...
- Python文件读取常用方法
1. 关于读取文件 f.read() 读取文件中所有内容 f.readline() 读取第一行的内容 f.readlines() 读取文件里面所有内容,把每行的内容放到一个list里面 注:因为文件指 ...
- 初识python 文件读取 保存
上一章最后一题的答案:infors.sort(key=lambda x:x['age'])print(infors)--->[{'name': 'laowang', 'age': 23}, {' ...
随机推荐
- flink 版本
从1.10.0开始,flink版本是一个分界线,所以如果用>1.10版本的特性,一些flink引用可以从1.10官网文档中查 后面版本中没有这些说明了. flink代码文档地址:https:// ...
- ubuntu - 程序运行的一些基础知识
1.指定编码格式 -finput-charset=GB2312 指定 C 程序的编码方式为 GB2312,不指定时默认编码方式为 UTF-8 -fexec-charset=GB2312 指定 可执行程 ...
- reids哨兵机制
宏观上的哨兵机制 监控:哨兵不断的检查master和slave是否正常的运行. 通知:当监控的某台Redis实例发生问题时,可以通过API通知系统管理员和其他的应用程序. 自动故障转移:如果一个mas ...
- 前端vue的JsPDF html2canvas 生成pdf并以文件流形式上传到后端(转载)
原文地址 1.首先在文件内引入htmlToPdf.js这里代码引入了html2canvas和jspdf//需要 npm i html2Canvas 和 npm i jspdf 在这里将getPdf 这 ...
- vuex状态管理器
vuex核心概念 // vuex中一共有五个状态 State Getter Mutation Action Module import Vue from 'vue' import Vuex from ...
- git将自己分支上忽略已修改但不需要的提交的文件
一:在idea上把需要提交的文件勾选上提交 二:git stash命令将余下被修改的文件存入(隐藏)暂存区 git stash 三:切换master分支合并上述分支 四:合并后再返回上述分支,git ...
- wmi和wmic
https://baike.baidu.com/item/Windows%20Management%20Instrumentation/572501?fromtitle=WMI&fromid= ...
- 普通java项目打成jar包,引入第三方jar .
ja方法1 . MANIFEST.MF 中添加 Class-Path . 1. 项目src目录下创建 META-INF/MANIFEST.MF 文件.文件内容 Manifest-Version ...
- C语言 数据编码方式
一.整形数据类型 1.无符号数的编码 无符号数指的是整个机器字长的全部位数均表示数值位. 我们用函数 来进行运算.(B2U是Binary to Unsigned的缩写,长度为w),x代表为0 ...
- Android EditText的onEditorAction监听事件防止执行两次
Android的EditText通过setOnEditorActionListener给文本编辑框设置监听事件,但是在其处理方法onEditorAction中的逻辑在每次回车后都触发了两次,这是因为在 ...