首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获取在Python中打开的文件的行号

如何获取在Python中打开的文件的行号
EN

Stack Overflow用户
提问于 2021-05-21 20:46:54
回答 1查看 67关注 0票数 1

我正在搜索文件中的术语列表。我想打印找到该术语的文件中的行号。

这是我用来查找术语的代码:

代码语言:javascript
运行
复制
w = "wordlist.txt"
d = "demofile.txt"

keys = [key for key in (line.strip().lower() for line in open(w)) if key]

with open(d) as f:
    print("File", w)
    for line in f:
        for key in keys:
            if key in line.lower():
                print(key)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-21 20:50:20

在本例中,您可以使用enumerate,它返回迭代器计数的元组,以及可迭代变量(本例中为文件句柄f )中当前迭代的值。

file_to_be_read.txt

代码语言:javascript
运行
复制
Hello, this is line 0
And this is the second line

your_readscript.py

代码语言:javascript
运行
复制
with open('file_to_be_read.txt', 'r'):

    for line_no, line in enumerate(f):
        print(f'{line_no}: {line}')

其中,line_no现在表示for循环体中的当前行号,从0开始。

输出:

代码语言:javascript
运行
复制
0: This is line 0
1: And this is the second line

如果希望它从1(或任何其他整数)开始,可以将该参数作为参数传递给enumeratestart参数,如下所示:

代码语言:javascript
运行
复制
for line_no, line in enumerate(f, start=1):
    ...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67637161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档