gpt4 book ai didi

python - 名称错误 : free variable 'd' referenced before assignment in enclosing scope

转载 作者:行者123 更新时间:2023-12-01 00:25:22 34 4
gpt4 key购买 nike

我是 Python 新手,我想知道代码是否可行:

chs = ch.split(' ')
d = { mot:ch.count(mot) for mot in chs if (mot not in d)}

这些指令旨在创建一个字典,根据我对其他编程语言的了解,我知道每次迭代循环时都会进行计数,所以我想做的是优化而不是进行计数如果该单词已被计算在内。

现在的问题是我收到此错误

NameError: free variable 'd' referenced before assignment in enclosing scope

我完全理解,变量d尚未设置。

所以,我正在寻找的是知道是否有一些临时变量具有封装之前的值。

最佳答案

您可能会遇到这个:

ch = 'a a b c d'
words = set(ch.split(' '))

d = { mot:ch.count(mot) for mot in words}
print(d)

创建一组单词。这样您只需检查唯一的单词,每个单词一次。

关于python - 名称错误 : free variable 'd' referenced before assignment in enclosing scope,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58621636/

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