如何从python中的txt文件中选择要打印的行

如何从python中的txt文件中选择要打印的行,python,Python,我想打印txt文件中的特定行,如下面的txt文件: “第1行” “第2行” “第3行” 我想打印第3行和第2行,怎么做?假设您想从开始行打印到结束行。您可以执行以下操作: with open("test.txt", "r") as f: rows = f.readlines()[start_line - 1 : end_line] print(rows) 如果start\u line是2而end\u line是3,它将打印test.txt

我想打印txt文件中的特定行,如下面的txt文件:

“第1行”

“第2行”

“第3行”


我想打印第3行和第2行,怎么做?

假设您想从
开始行
打印到
结束行
。您可以执行以下操作:

with open("test.txt", "r") as f:
    rows = f.readlines()[start_line - 1 : end_line]
    print(rows)

如果
start\u line
2
end\u line
3
,它将打印
test.txt
的第二行和第三行。此代码将帮助您:

from collections import deque

try:
    num = int(input("Number of last lines to print:"))
except:
    num = 1

a_file = open("data.txt")

lines = a_file.readlines()

for line in deque(lines, num):
    print(line)

为避免将整个文件加载到内存中,请不要使用
读线

fname = "data.txt"
skip_num = 2
with open(fname) as f:
    for _ in range(skip_num):
        f.readline()
    for line in f:
        print(line)

干杯

您总是想打印第2行和第3行,还是因为它们满足某些条件?或者你只需要跳过第一行吗?我想从用户那里得到一个数字,然后打印他从末尾选择的lune的数字,就像他选择1我只打印最后一行,2最后两行请更改每个用户的答案注释部分“选择1我只打印最后一行,2最后两行”,你可以使用[1:],例如[0:10]表示从开始打印到9行。[1:]表示从第二行开始到infinte。请查看以下代码
list_=[1,2,3,4,5,6];ind=输入('输入编号:');打印(列表\[-int(ind):])
。但用户希望最后n个值。我只是想让你改变你的答案。这并不能回答这个问题。若要评论或要求作者澄清,请在其帖子下方留下评论。-完成。更新了我的回答。将
num
更改为
int(num)