开个丸笑 发表于 2017-12-23 20:32:43

零基础入门python读取文件的5~10行为什么会不一样啊?

f=open('E:\\recordi.txt')
count=0
for each in f:
    count+=1
    if count>=5 and count<=10:
      print(f.readline())
    else:
      f.readline()
   
f.close()

°蓝鲤歌蓝 发表于 2017-12-23 20:42:34

每一次读取文件都是从上一次读取结束的地方开始。

ba21 发表于 2017-12-23 20:55:47

已经for each in f: 在遍历行了。还f.readline()干嘛???

f=open('E:\\recordi.txt')
count=0
for each in f:
    count+=1
    if count>=5 and count<=10:
      print(each)
   
f.close()

开个丸笑 发表于 2017-12-23 20:59:24

ba21 发表于 2017-12-23 20:55
已经for each in f: 在遍历行了。还f.readline()干嘛???

上一次有问题还是你回答我的谢谢啊亲

开个丸笑 发表于 2017-12-23 21:00:45

开个丸笑 发表于 2017-12-23 20:59
上一次有问题还是你回答我的谢谢啊亲

那怎么读取5~10行呢?

开个丸笑 发表于 2017-12-23 21:04:05

开个丸笑 发表于 2017-12-23 21:00
那怎么读取5~10行呢?

想通了会了谢谢{:5_100:}

ba21 发表于 2017-12-23 21:07:50

开个丸笑 发表于 2017-12-23 20:59
上一次有问题还是你回答我的谢谢啊亲

上的代码不就是读取5~10吗?哪里不对了?

你的想法应该是直接读5~10行吧。
都是顺序读的,直接跳到5~10没这个方法。。
代码优化最多就是这样:
f=open('E:\\recordi.txt')
count=0
for each in f:
    count+=1
    if count>=5 and count<=10:
      print(each)
    if count == 10:
      break;
   
f.close()

开个丸笑 发表于 2017-12-23 21:14:27

ba21 发表于 2017-12-23 21:07
上的代码不就是读取5~10吗?哪里不对了?

你的想法应该是直接读5~10行吧。


谢谢!!!
页: [1]
查看完整版本: 零基础入门python读取文件的5~10行为什么会不一样啊?