17623095765 发表于 2020-10-5 23:47:25

029讲课后作业,自己摸索的时候出现问题

本帖最后由 17623095765 于 2020-10-5 23:53 编辑

f = open(r'C:\Users\异路异心\Desktop\1.txt')   #这个文件第一行字符串开头是1,第二行字符串是2,这次类推
f.seek(0,0)

for a in f:
    print(f.readline(), end= '')

执行后去却是输出 第二行第四行第六行 这样的   

2adfadf
4sfgcbv
6fdafadf7
8fdafad


我自己觉得应该输出 第一行 第二行 第三行
1***
2***
3***
等等

能不能告诉我一下哪里错了呢?非常感谢

kylin121380 发表于 2020-10-5 23:57:55

print(a, end= '')

疾风怪盗 发表于 2020-10-6 00:01:51

猜测:你的循环是读取a,然后读取a,文本的第一行后,你没输出a,指针到了a下面,然后你又要输出f.readline,相当于从a下面的指针又开始读了,就输出了a下面的一行,依次类推,就变成隔行了

你可以像下面这样输出看看结果,还有可以试下f.readlines看看,这是读取全部行
for a in f:
    print('1',a)
    print('2',f.readline())

17623095765 发表于 2020-10-6 00:11:49

疾风怪盗 发表于 2020-10-6 00:01
猜测:你的循环是读取a,然后读取a,文本的第一行后,你没输出a,指针到了a下面,然后你又要输出f.readline ...

我明白了非常感谢

17623095765 发表于 2020-10-6 00:13:00

kylin121380 发表于 2020-10-5 23:57
print(a, end= '')

我明白啦 非常感谢
页: [1]
查看完整版本: 029讲课后作业,自己摸索的时候出现问题