在嵌套列表中查找索引

发布于 2024-12-11 12:22:51 字数 469 浏览 0 评论 0原文

可能的重复:
Python 中的高效单词索引

对基本问题表示歉意,如何找到索引< code>((1,2),(2,1),(2,2)) 对应于 ref 中的“yellow”并存储它们,以便我可以在事后访问它们而无需重新运行搜索?

ref1 = "this is a test" 
ref2 = "this is a yellow test"
ref3 = "this is yellow"
ref4 = "yellow and orange are colors"
ref = ((ref1,ref2),(ref3,ref4))

Possible Duplicate:
efficient word indexing in python

Apologies for the basic question, how can I find the indexes ((1,2),(2,1),(2,2)) corresponding to "yellow" in ref and store them so that I can access them afterwords without rerunning the search?

ref1 = "this is a test" 
ref2 = "this is a yellow test"
ref3 = "this is yellow"
ref4 = "yellow and orange are colors"
ref = ((ref1,ref2),(ref3,ref4))

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

过度放纵 2024-12-18 12:22:51

只是为了它:

[(k,i) for k,m in enumerate(ref, 1) for i,j in enumerate(m, 1) if 'yellow' in j]

但您可能想要真正的索引(从零开始)...如果是这样,请删除 enumerate 的第二个参数。

Just for the sake of it:

[(k,i) for k,m in enumerate(ref, 1) for i,j in enumerate(m, 1) if 'yellow' in j]

but you probably want the real index (starting at zero)... Remove the second argument of enumerate if so.

空名 2024-12-18 12:22:51

我不确定你的意思,但是如果你想在每次看到“黄色”这个词时从嵌套列表(或元组)的列表(或元组)中生成一个对的列表,那么:

answer = []
for i in range(len(ref)):
    nested_tuple = ref[i]
    for j in range(len(nested_tuple)):
        string = ref[i][j]
        if string.find('yellow') != -1: answer.append((i,j))

I'm not sure what you mean, but if you want to generate a list of pairs from a list (or tuple) of nested lists (or tuples) for every time you see the word 'yellow' then:

answer = []
for i in range(len(ref)):
    nested_tuple = ref[i]
    for j in range(len(nested_tuple)):
        string = ref[i][j]
        if string.find('yellow') != -1: answer.append((i,j))
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文