10-1 Python学习笔记:在文本编辑器中新建一个文件,写几句话来总结一下你至此学到的Python知识,其中每一行都以“In Python you can”打头。将这个文件命名为learning_python.txt,并将其存储到为完成本章练习而编写的程序所在的目录中。编写一个程序,它读取这个文件,并将你所写的内容打印三次:第一次打印时读取整个文件;第二次打印时遍历文件对象;第三次打印时将各行存储在一个列表中,再在with代码块外打印它们。
with open('learning_python.txt') as f_obj: #读取整个文件 txt_1 = f_obj.read() print(txt_1) print("\n") #这里会输出两个空行 #遍历文件对象 f_obj.seek(0) #对于需要多次重复读取的文档,使用f.seek(0)使文件指针 for line in f_obj: #移动到文件起始位置,再开始读取。 print(line.rstrip()) print("\n") #将各行存储在一个列表中 f_obj.seek(0) lines = f_obj.readlines() txt_3 = '' for line in lines: txt_3 += line print(txt_3)
第一次运行时发现 文件重复读取第二次时无内容,搜索后发现 文件读取完后指针在末尾,使用f.seek(0)可将指针移动到文件开头,从而可以多次重复读取文件。(https://www.cnblogs.com/mcladyr/p/13677701.html)
第二次运行发现print("\n")输出两个空行,搜索后发现 print()函数末尾自带一个换行符,故。