米希児 2021-03-05 16:55 采纳率: 100%
浏览 1077
已采纳

python的readline()是何如实现跳过第一行的

本人python新手一枚,想请教各位大佬,

teleFile.readline()执行后,再使用readlines()获取内容时,为什么能跳过第一行,

个人理解,teleFile是我打开的一个.txt文件,不做任何操作时,里面应该包含了文件中的全部内容,对它执行readline()后,再使用readlines()获取文件内容时,应该还是全部内容,但实际打印出的结果显示去掉了首行内容。

想请教python底层执行的过程及原理。

  • 写回答

6条回答 默认 最新

  • 天际的海浪 2021-03-05 17:44
    关注

    在文件对象teleFile内部有一个指针,初始时指针指向文件内容的第一行。

    在执行teleFile.readline()时,读取指针指向的那一行,然后指针重新指向下一行。

    这样第一次执行teleFile.readline()时,读取的是第一行,

    第二次执行teleFile.readline()时,读取的就是第二行,

    而teleFile.readlines()方法其实就是循环的调用readline()方法,直到指针指向文件结尾。

    你的代码先执行一次teleFile.readline()之后指针就指向第二行了。

    然后teleFile.readlines()中调用readline()方法就从第二行开始读取了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
  • ¥40 串口调试助手打开串口后,keil5的代码就停止了
  • ¥15 电脑最近经常蓝屏,求大家看看哪的问题
  • ¥60 高价有偿求java辅导。工程量较大,价格你定,联系确定辅导后将采纳你的答案。希望能给出完整详细代码,并能解释回答我关于代码的疑问疑问,代码要求如下,联系我会发文档
  • ¥50 C++五子棋AI程序编写
  • ¥30 求安卓设备利用一个typeC接口,同时实现向pc一边投屏一边上传数据的解决方案。