從文件中讀取指定的行

def eachlineof(filename):
    ''' 逐行讀取給定的文本文件,返回行號、剔除末尾空字符的行內容 '''
    with open(filename) as handle:
        for lno, line in enumerate(handle):
            yield lno+1, line.strip()

import linecachetheline=linecache.getline('F:/mysite/fiele.txt',1)print theline

讀取文件中的指定行,如上。

從文件中讀取多行,如下

lnum = 0
with open('F:/mysite/fiele.txt', 'r') as fd:
    for line in fd:
        lnum += 1;
        if (lnum >= 2) & (lnum <= 5):
            print line
    fd.close()
如果文件不大,用如下方法,因爲linecache佔用緩存
def getline(thefilepath, desired_line_number):
    if desired_line_number < 1: return ''
    for current_line_number, line in enumerate(open(thefilepath, 'rU')):
        if current_line_number == desired_line_number - 1 : return line
    return ''



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章