欢迎访问宙启技术站
智能推送

如何使用Python从文件中读取特定行数的内容?

发布时间:2023-07-04 22:45:24

要从文件中读取特定行数的内容,可以使用Python的内置函数readlines()

下面是一个使用Python从文件中读取特定行数内容的示例代码:

def read_specific_lines(filename, start_line, end_line):
    try:
        with open(filename, 'r') as file:
            lines = file.readlines()
            # 如果输入的行数超过文件中的实际行数,则将结束行数设置为文件中的最大行数
            if end_line > len(lines):
                end_line = len(lines)
            # 根据起始行和结束行,读取特定行数的内容
            for line in lines[start_line-1 : end_line]:
                print(line.rstrip())  # rstrip()函数用于删除末尾的换行符
    except FileNotFoundError:
        print(f"文件{filename}不存在")

# 测试
read_specific_lines('sample.txt', 3, 6)

在上述代码中,首先通过with open(filename, 'r') as file打开文件,并使用readlines()函数将文件内容逐行存储到列表lines中。然后,判断输入的起始行和结束行是否超出了文件实际的行数,如果超出,则将结束行数设置为文件行数的最大值。最后,通过遍历lines[start_line-1 : end_line]的切片,可以打印出特定行数的内容。

使用这段代码,你只需要将文件的名称(可以是相对路径或绝对路径)作为参数传递给read_specific_lines()函数,并指定起始行号和结束行号,就可以读取特定行数的内容。

注意:起始行和结束行的编号是从1开始的,而在lines列表中,行的编号是从0开始的。因此,在切片中使用[start_line-1 : end_line]可以正确获得指定范围的行。