萧径亭 2019-08-26 15:19 采纳率: 100%
浏览 3079
已采纳

为什么python中readline无法读取文件的第一行?

python中通过readline读取文件无法读取第一行,请大神解惑

代码如下:

os.getcwd()
os.chdir('D:\\AutoTest\\Automated_test_platform\\tests\\myscript\\results')
with open('poetry.txt', 'r', encoding='utf-8') as data:
    for each_line in data:
        print(data.readline(), end='')

文件内容:
关雎
[先秦] 诗经
关关雎鸠,在河之洲。
窈窕淑女,君子好逑。

参差荇菜,左右流之。
窈窕淑女,寤寐求之。

求之不得,寤寐思服。
悠哉悠哉,辗转反侧。

参差荇菜,左右采之。
窈窕淑女,琴瑟友之。

参差荇菜,左右芼之。
窈窕淑女,钟鼓乐之。

运行结果:
图片说明

  • 写回答

3条回答 默认 最新

  • JonathanYan 2019-08-26 15:43
    关注

    你都已经遍历each_line变量了,为什么还要输出data.readline(),直接pirnt(each_line)不行吗

    for line in file:
        # Todo
    

    的意思是

    while file文件未结束:
        line = file.readline()
        # Todo
    

    所以你的代码就等价于

    while data文件未结束:
        each_line = data.readline()
        print(data.readline())
    

    我相信你能看出问题在哪。
    其次,看输出结果麻烦仔细点,你这不仅仅是第一行没输出,整首诗就输出了一部分,再仔细看还能看出是一半,这时候应该已经能知道是哪方面问题了,仔细想想再问。

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

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大