吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1073|回复: 5
收起左侧

[已解决] python3 readlines问题

[复制链接]
thepoy 发表于 2020-3-20 09:59
本帖最后由 thepoy 于 2020-3-20 10:22 编辑

官方文档里说:
readlines(hint=-1)
Read and return a list of lines from the stream. hint can be specified to control the number of lines read: no more lines will be read if the total size (in bytes/characters) of all lines so far exceeds hint.

hint用来控制读取的行数,但我测试时发现并非如此,有些懵逼。

测试文本文件test.txt,每个数字占一行

1
2
3
4
5
6
7
8
9
0
11
12
13

读取行数

with open('test.txt') as f:
    r = f.readlines(5)
    print(r)

输出结果是

['1\n', '2\n', '3\n']

并非是5行,这是怎么回事呢?

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

a5582323 发表于 2020-3-20 10:09
QQ截图20200320100753.png
第一行由3个1改到5个1的运行结果,参数是字符的长度,不是行数
zyy22664488 发表于 2020-3-20 10:14
 楼主| thepoy 发表于 2020-3-20 10:20
本帖最后由 thepoy 于 2020-3-20 10:21 编辑
a5582323 发表于 2020-3-20 10:09
第一行由3个1改到5个1的运行结果,参数是字符的长度,不是行数

应该是每行字符总长度小于hint就依次读取下一行,大于hint就停止读取。
a5582323 发表于 2020-3-20 10:27

不是换行符的问题,字符长度,看2楼的图
丶Amber 发表于 2020-3-20 11:09
hint参数是字节的总大小,会读取到该文件内对应字节数的当前行。

第一行如果有5个字符,hint=5,就只读取第一行,(hint<=5时都只会读取第一行的内容)

第二行如果有5个字符,hint=6,会开始读取第二行内容。(5<=hint<=11时时会读取到前两行的内容)
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-30 05:33

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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