找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 3382|回复: 3

len 遇到的问题

2

主题

5

帖子

5

积分

贫民

积分
5
AKgjm 发表于 2015-8-8 09:26:30 | 显示全部楼层 |阅读模式
s=open(name.txt,"r")
eachline=s.readlines()
len(eachline)和len(s.readlines())的输出为什么不同呀?
回复

使用道具 举报

0

主题

1

帖子

15

积分

贫民

积分
15
dogless 发表于 2015-8-9 10:13:16 | 显示全部楼层
如果name.txt中有两行
#第一行
#第二行

那么,第一次使用 readline()
将读取第一行
第二次使用readline()
将读取第二行
第三次
读取为空

同理
第一次使用readlines()
将读取两行
第二次使用readlines()
读取为空
回复 支持 2 反对 0

使用道具 举报

2

主题

5

帖子

5

积分

贫民

积分
5
AKgjm  楼主| 发表于 2015-8-18 15:55:40 | 显示全部楼层
dogless 发表于 2015-8-9 10:13
如果name.txt中有两行
#第一行
#第二行

恩恩,懂了,非常感谢
回复 支持 反对

使用道具 举报

4

主题

77

帖子

77

积分

版主

Rank: 7Rank: 7Rank: 7

积分
77

活跃会员热心会员默默耕耘优秀版主论坛元老

北极 发表于 2015-8-30 19:35:39 | 显示全部楼层
本帖最后由 北极 于 2015-8-30 19:42 编辑

如图:
line=s.readlines()
print line第一次读取全部文件内容赋值给line以列表形式存储
print s.readlines() 第二次读取文件内容为空

所以,如果想通过len来统计文件长度,每一次使用len需要s.close(),重新打开文件再次读取文件内容。

2015-08-30 19:33:53.png
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表