read(),readline() 和 readlines() 比较

共同点:均可接受一个变量用以限制每次读取的数据量,但通常不使用

区别:

  read() 【即 fileObject().read( [size] )

    特点:读取整个文件,将文件内容放在一个字符串变量中。

    劣势:如果文件非常大,尤其大于内存时,无法使用read()方法。

with open(r'../learn_file/file_to_read.txt', encoding='utf-8', mode='r') as fb:
content = fb.read()
print(type(content))
print(content)
# 输出:
# <class 'str'>
# line 1: Hello, Mike.
# line 2: Nice to meet you. I'm Nick.
# line 3: Welcome to Shenzhen.
# line 4: Thx, it is really a beautiful city. I enjoy my time here.
# line 5: It is. Shall we go for some coffee this afternoon.
# line 6:Sure. And I want to discuss some details about the project we're going to work for

  readline() 【即 fileObject.readline( [size] ),[size]表示可选参数。】

    特点:从文件中一行一行地整行读取数据,如果指定了一个非负数的参数,则返回指定大小的字节数。

    缺点:比readlines()慢得多

with open(r'../learn_file/file_to_read.txt', encoding='UTF-8', mode='r+') as fb:
while True:
content = fb.readline().replace('\n', '')
# content = fb.readlines()
# if not content:
# break
if content:
print(type(content), content)
else:
break
# print(type(content))
# print(type(content), content)
print(fb.name)
# 输出:
# <class 'str'> line 1: Hello, Mike.
# <class 'str'> line 2: Nice to meet you. I'm Nick.
# <class 'str'> line 3: Welcome to Shenzhen.
# <class 'str'> line 4: Thx, it is really a beautiful city. I enjoy my time here.
# <class 'str'> line 5: It is. Shall we go for some coffee this afternoon.
# <class 'str'> line 6:Sure. And I want to discuss some details about the project we're going to work for.
# ../learn_file/file_to_read.txt

 readlines() 【即 fileObject.readlines( [sizeint] ),[sizeint] 表示可选参数】

    特点:从文件一次读取所有行并返回列表,若给定sizeint > 0,返回总和大约为sizeint字节的行

with open(r'../learn_file/file_to_read.txt', encoding='utf-8', mode='r') as fb:
content = fb.readlines()
print(type(content))
for line in content:
print(type(line), line.replace('\n', ''))
# 输出
# <class 'list'>
# <class 'str'> line 1: Hello, Mike.
# <class 'str'> line 2: Nice to meet you. I'm Nick.
# <class 'str'> line 3: Welcome to Shenzhen.
# <class 'str'> line 4: Thx, it is really a beautiful city. I enjoy my time here.
# <class 'str'> line 5: It is. Shall we go for some coffee this afternoon.
# <class 'str'> line 6:Sure. And I want to discuss some details about the project we're going to work for.

read(),readline() 和 readlines() 比较的更多相关文章

  1. python文件读read()、readline()、readlines()对比

    读取文件的三个方法:read().readline().readlines().均可接受一个变量用以限制每次读取的数据量,但通常不使用.本章目的是分析和总结三种读取方式的使用方法和特点. 一.read ...

  2. python读文件的三个方法read()、readline()、readlines()详解

    文件 runoob.txt 的内容如下: 1:www.runoob.com2:www.runoob.com3:www.runoob.com4:www.runoob.com5:www.runoob.co ...

  3. python中read()、readline()、readlines()函数

    python文件读read().readline().readlines()对比   目录 一.read方法 二.readline方法 三.readlines方法 正文 读取文件的三个方法:read( ...

  4. python第二十九课——文件读写(readline()和readlines()的使用)

    演示readline()和readlines()的使用: #1.打开文件 f3=open(r'a.txt','r',encoding='gbk') #2.读取数据 content3=f3.readli ...

  5. python中read() readline()以及readlines()用法

    [转自:http://www.ibm.com/developerworks/cn/linux/sdk/python/python-5/index.html#N1004E] 我们谈到“文本处理”时,我们 ...

  6. python中的三个读read(),readline()和readlines()

    Python 将文本文件的内容读入可以操作的字符串变量非常容易. 文件对象提供了三个“读”方法: .read()..readline() 和 .readlines(). 每种方法可以接受一个变量以限制 ...

  7. python的readline() 和readlines()

    .readline() 和 .readlines() 之间的差异是后者一次读取整个文件,象 .read() 一样..readlines() 自动将文件内容分析成一个行的列表,该列表可以由 Python ...

  8. 使用read、readline、readlines和pd.read_csv、pd.read_table、pd.read_fwf、pd.read_excel获取数据

    从文本文件读取数据 法一: 使用read.readline.readlines读取数据 read([size]):从文件读取指定的字节数.如果未给定或为负值,则去取全部.返回数据类型为字符串(将所有行 ...

  9. Python - 文件读取read()、readline()、readlines()区别

    前言 读取文件的三个方法:read().readline().readlines().均可接受一个方法参数用以限制每次读取的数据量,但通常不使用 read() 优点:读取整个文件,将文件内容放到一个字 ...

随机推荐

  1. React笔记02——React中的组件

    一个网页可以被拆分成若干小部分,每个部分都可以称为组件,即组件是网页中的一部分.组件中还可以有多个组件. 上一节中的App.js就是一个组件(继承了React.Component类的类). 一个组件的 ...

  2. .NET Core 通过 Ef Core 操作 Mysql

    1.运行环境 开发工具:Visual Studio 2017 JDK版本:.NET Core 2.0 项目管理工具:nuget 2.GITHUB地址 https://github.com/nbfujx ...

  3. Delphi Base64编码/解码

    Uses CnBase64: CnBase64.Base64Encode(Edit1.Text, Psw64);

  4. (转)Docker入门——Dockerfile详解

    转:https://www.cnblogs.com/sorex/p/6481407.html 基本示例 FROM MAINTAINER LABEL RUN ADD COPY CMD ENTRYPOIN ...

  5. UPLOADIFY用法

    把下面代码 this.settings.upload_url = SWFUpload.completeURL(this.settings.upload_url);  this.settings.but ...

  6. 用js实现摇一摇功能

    function init(){ if (window.DeviceMotionEvent) { // 移动浏览器支持运动传感事件 window.addEventListener('devicemot ...

  7. datastudion 资源导入python包,编写模块

    学习文档,不懂再问. https://help.aliyun.com/document_detail/74423.html?spm=a2c4g.11186623.6.688.72635debHqgkV ...

  8. 私有IP地址

    私有IP地址: 在ABC三类网络中,如下三段网络地址为私有IP地址,如何人都可以自行在自己的局域网中使用这些IP地址. A类私有:10.0.0.1----10.255.255.254 B类私有:172 ...

  9. jmeter工作原理介绍,以及常见错误

    JMeter结果树响应数据中文乱码解决办法 打开jmeter配置文件搜索encoding修改编码格式改为utf-8 Jmeter服务器反馈登陆不成功问题 导入到JMeter后,执行场景,发现登录校验成 ...

  10. Robot Framework 执行结果无法查看(tomcat部署)

    打开jenkins系统管理-命令行执行: System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","& ...