我是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)
创建一个set
单词。这样,您只需检查一次唯一的单词。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句