16

テキスト ファイルがあり、2 番目の行から 15 行目までを読み取る必要があります。いくつかの方法を試しましたが、うまくいきませんでした...誰かが私を助けてくれたら嬉しいです...どうもありがとう!

4

4 に答える 4

39

使用itertools.islice:

from itertools import islice
with open('filename') as fin:
    for line in islice(fin, 1, 16):
        print line
于 2013-08-24T19:11:26.827 に答える
9

ファイルがそれほど大きくない場合:

with open('/path/to/file') as f:
    print f.readlines()[1:15]
于 2013-08-24T19:11:50.223 に答える
4

Jonの答えは間違いなく、よりpythonicでクリーンなアプローチです。


または、次を使用できますenumerate()

with open("file", 'r') as f:
    print [x for i, x in enumerate(f) if 1 <= i <= 15]

これは、ファイル内のすべての行をループすることに注意してください。次のように、15 行目以降でループを中断することをお勧めします。

with open("file", 'r') as f:
    for i, x in enumerate(f):
        if 1 <= i <= 15:
            print x
        elif i > 15:
            break
于 2013-08-24T19:14:01.777 に答える
3

行を読んで、必要な行を取得できると思います

例えば:

with open("a.txt", "r") as text_file:
    data = text_file.readlines()

data[1]は2行目data[14]で15行目なので、そのようにスライスできますdata[1:14]

次に、それらを変数に入れることができます。それだけです

于 2013-08-24T19:14:07.430 に答える