python读写:为什么最后的输出不是每一行的内容,而是间隔一行输出一行??如图。

原来在T222这个文件中是aaa bbb ccc,后来添加111 222 333。接着打印每一行,可是为什么最后的输出不是每一行的内容,而是间隔一行输出一行??如图。

因为你读了两次。调用一次readline读取一行。

所以,对于 aaa bbb ccc。

第一次读取aaa,但是你没输出,而是用来计算读取长度。但是这个aaa已经被读取了,当你在下面输出的时候,读到的已经是bbb了。

所以正确的做法应该是:

tmp = file.readline()
if len(tmp) == 0:
    break
else:
    print tmp

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-21
后添加的列表中字符串都带有\n保存到文件中,打印出来肯定会换行本回答被网友采纳
相似回答