for in 用法问题
file_content = open('文档.txt')#第一个
for i in file_content:
print('0 ')
#第二个
for i in file_content:
print('1')
#第三个
for i in range(2):
print('2')
#第四个
for i in range(2):
print('3')
这里文档文件在里面随便打点东西进去
为什么第二个没有任何输出
因为 for 循环过程中是以行为单位读取文件内容的,每读取一次,文件指针就移动到下一行开始的位置
这也是为什么每次循环都不是读取同一行的原因,而第一次 for 循环会将文件的每一行全部读取完才结束
导致文件对象的指针移动到了末尾,所以第二个 for 循环时候,文件对象 file_content 的文件指针已经在末尾了
导致 这个for 循环 循环了个空气,所以没有进入循环
文档.txt是空文件? Twilight6 发表于 2020-7-8 16:11
因为 for 循环过程中是以行为单位读取文件内容的,每读取一次,文件指针就移动到下一行开始的位置
...
循环了个空气就很真实了{:10_256:} yhhpf 发表于 2020-7-8 16:21
循环了个空气就很真实了
哈哈 我也觉得 因为你打开读完后,读到尾了,再读也是从尾开始的。
关闭后再打开就可以了,每次for循环之间插一个 file_content.close().
页:
[1]