如何读取文件的特定部分

时间:2013-02-14 17:04:44

标签: python file for-loop

我有一个大文件,只会张贴一小段文件:

World population in thousands
Source: United Nations, DEMOBASE

Country/ISO country code/UN Code/Population 1950/Population 2012
----------------------------------------------------------------
Afghanistan/AF/4/8151/33397
Albania/AL/8/1215/3227
Algeria/DZ/12/8753/36486
American Samoa/AS/16/19/71
Andorra/AD/20/6/88

我的问题是如何阅读前5行,只是有关国家/地区信息开始之前的信息。

我试过像:

file=open("wordpop.txt","r")
for i in range[0:5]:
    rows = file.read()
print(rows)

2 个答案:

答案 0 :(得分:2)

range()是一个函数,而不是列表。 range(5)可以更好地工作,但是你只是读了5次文件(四次读取空结果)。

使用readline()读取文件中的一行行,并使用列表推导功能轻松地将行放入列表中:

with open("wordpop.txt","r") as infile:
    rows = [infile.readline() for _ in range(5)]
print(rows)

答案 1 :(得分:-1)

尝试:

for line in file.readlines()[:5]:
    print line