gpt4 book ai didi

python - 类型错误 : 'zip' object is not subscriptable

转载 作者:IT老高 更新时间:2023-10-28 20:25:36 25 4
gpt4 key购买 nike

我有一个格式为 token/tag 的标记文件,我尝试了一个函数,该函数返回一个包含 (word,tag) 列表中单词的元组。

def text_from_tagged_ngram(ngram): 
if type(ngram) == tuple:
return ngram[0]
return " ".join(zip(*ngram)[0]) # zip(*ngram)[0] returns a tuple with words from a (word,tag) list

在 python 2.7 中它运行良好,但在 python 3.4 中它给了我以下错误:

return " ".join(list[zip(*ngram)[0]])
TypeError: 'zip' object is not subscriptable

有人可以帮忙吗?

最佳答案

在 Python 2 中,zip返回了一个列表。在 Python 3 中,zip返回一个可迭代的对象。但是您可以通过调用 list 将其添加到列表中。 ,如:

list(zip(...))

在这种情况下,那就是:

list(zip(*ngram))

通过列表,您可以使用索引:

items = list(zip(*ngram))
...
items[0]

等等。

但是如果你只需要第一个元素,那么你就不需要一个列表。您可以使用 next .

在这种情况下,那就是:

next(zip(*ngram))

关于python - 类型错误 : 'zip' object is not subscriptable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27431390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com