如何使用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]可以正确获得指定范围的行。
