python读文件-Python四种逐行读取文件内容的方法_weixin_37988176的博客-程序员信息网

下面是四种Python逐行读取文件内容的方法, 并分析了各种方法的优缺点及应用场景,以下代码在python3中测试通过, python2中运行部分代码已注释,稍加修改即可。

方法一:readline函数#-*- coding: UTF-8 -*-

f = open("/pythontab/code.txt") # 返回一个文件对象

line = f.readline() # 调用文件的 readline()方法

while line:

#print line, # 在 Python 2中,后面跟 ',' 将忽略换行符

print(line, end = '') # 在 Python 3中使用

line = f.readline()

f.close()

优点:节省内存,不需要一次性把文件内容放入内存中

缺点:速度相对较慢

方法二:一次读取多行数据

代码如下:#-*- coding: UTF-8 -*-

f = open("/pythontab/code.txt")

while 1:

lines = f.readlines(10000)

if not lines:

break

for line in lines:

print(line)

f.close()

一次性读取多行,可以提升读取速度,但内存使用稍大, 可根据情况调整一次读取的行数

方法三:直接for循环

在Python 2.2以后,我们可以直接对一个file对象使用for循环读每行数据

代码如下:#-*- coding: UTF-8 -*-

for line in open("/pythontab/code.txt"):

#print line, #python2 用法

print(line)

方法四:使用fileinput模块import fileinput

for line in fileinput.input("/pythontab/code.txt"):

print(line)

使用简单, 但速度较慢

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_37988176/article/details/109368993

智能推荐

分布式数据库如何实现主键全局自增?__江南一点雨的博客-程序员信息网

前面和大家介绍了 MyCat 中数据库不同的分片规则,从留言中看出大家对分布式数据库中间件还挺感兴趣,因此今天就再来一篇,聊一聊主键全局自增要如何实现。关于数据库分库分表...

【PHP面试题】请简单描述一下数据结构的特征(stack、heap、list、doubly-linked-list、queue、array(vector))。_studyphp123的博客-程序员信息网

文章目录一、考点1、常见数据结构1) Array2)LinkedList3)Stack4)Heap5)list6)doubly-linked-list7)queue8)set9)map10)graph二、解题方法先理解每种数据结构的特征,有时会遇到让用PHPdiam实现其中的数据结构,遇到此类题,先要理解该种数据结构的特征是什么,然后再实现,通常可以使用PHP的数组来模拟。三、真题用PHP实现一个...

Java连接数据库并实现添加数据有重复不插入数据_数据库重复数据不插入_halo_prt的博客-程序员信息网

1、适用场景当你不希望存入数据库中的某组数据重复。我这里的例子是一个注册系统,不希望账户名重复。2、设置数据库中某字段不重复alter table user.users add unique(account);alter table + 数据库名.表名 + add unique (字段名);3、java连接数据库连接数据库需要先导入mysql-connector-java-5.1.36-bin.jar包下载地址下载好之后在idea中创建个Directory解压下载好的包,复制下图中框

springboot:jpa:报错 Inferred type 'S' for type parameter 'S' is not within its bound; 解决办法_花和尚也有春天的博客-程序员信息网

报错:Inferred type 'S' for type parameter 'S' is not within its bound;should extends xxxxxxInferred type 'S' for type parameter 'S' is not within its bound; should extend 'com.tzb.myspringboot.dao....

MOOC南京大学操作系统期末考试_雨客Yoker的博客-程序员信息网_设有n个进程共用一个相同的程序段

1.配置了操作系统的机器是一台比原来的物理机器功能更强的计算机,这样的计算机只是一台逻辑上的计算机,称为_______计算机。编号选项A并行B真实C虚拟D共享2.如果分时系统的时间片一定,那么_____,则响应时间越长编号选项A内存越少B内存越多C用户数越少D用户数越多3.实时操作系统必须在______内处理来自外部的事件。编号选项A响应时间B周转时间C调度时间

随便推点

C++宏定义函数_进击的码力的博客-程序员信息网_c++宏定义函数

在看OpenFoam源码的时候突然看到TypeName(“xxx”);这句几乎每个类都有,一开始以为是TypeName(“xxx”)调用构造函数,细看不太对,应该是调用宏定义的函数,这个宏函数原型在$SRC/OpenFOAM/db/typeInfo文件里定义的。如下:#define TypeName(TypeNameString) \ ClassName(TypeN...

Python基础-----列表生成式、偏函数、高阶函数、闭包、装饰器_zyuPp的博客-程序员信息网_通俗理解python偏函数,返回函数,高阶函数,闭包,装饰器

列表生成式列表生成式(列表推导式):通俗理解使用for循环快速创建一个列表,最终要获取一个列表下面这个我们经常使用比较麻烦的方法:my_list=[]for i in range(1,6): print(i) my_list.append(i)print(my_list)输出:[1, 2, 3, 4, 5]这个是列表生成式:my_list=[value for ...

【ManageEngine卓豪】移动终端管理解决方案,助力中州航空产业数字化转型_ManageEngine卓豪的博客-程序员信息网

ManageEngine卓豪签约中州航空有限责任公司,助力航运产业领导者建立“移动终端管理解决方案”,提升移动终端管理和信息安全。

CPU的结构和功能——指令流水及中断系统_是小白哇的博客-程序员信息网_中断周期的数据流

CPU结构(一)CPU的功能想了解CPU的结构,首先要知道CPU的功能。然后讨论什么样的结构能够为CPU提供相应的功能。CPU由运算器和控制器组成。1、控制器的功能取指令,把指令从内存单元中取出分析指令,对指令的操作码部分进行阶码,分析这条指令要完成什么功能,是指令集中哪一条指令执行指令,CPU的控制器发出各种操作命令,由这些操作命令控制相应的部件去完成指令要求的操作,这些操作命令具有...

OCR识别_康红风的博客-程序员信息网_bizlicense

最近作者项目中用到了身份证识别跟营业执照的OCR识别,就研究了一下百度云跟腾讯云的OCR产品接口。1.腾讯云OCR收费:身份证OCR和营业执照OCR接口,每个接口每个月各有1000次的免费调用接口说明:身份证OCR接口 - https://cloud.tencent.com/document/product/866/33524营业执照OCR接口-https://c...

Windows下配置OpenSSL1.1.1+Curl7.61.0访问HTTPS_lolzhzhzh的博客-程序员信息网

 前言       这几天使用百度的人脸识别API,他们在线接口是使用HTTPS进行GET和POST,官方的C++ SDK是使用Openssl+Curl进行访问的,于是写下这篇记录一下配置过程吧!Openssl简介       Curl要访问HTTPS需要用到SSL支持库,目前curl提供了两种使用支持库的方式,一种是Windows自带的WinSSL,另一种是第三方SSL库Open...

推荐文章

热门文章

相关标签