我正在尝试遍历单词列表并嵌套单词的每个字母,然后将最后一个字母默认为原始单词。
words = ['paste', 'pasta', 'pasha']
self.T = {}
for word in words:
current_dict = self.T
for letter in word:
current_dict = current_dict.setdefault(letter, {})
这输出:
{'p': {'a': {'s': {'t': {'e': {}, 'a': {}}, 'h': {'a': {}}}}}}
但我想要的输出是:
{'p': {'a': {'s': {'t': {'e': 'paste', 'a': 'pasta'}, 'h': {'a': 'pasha'}}}}}
我如何避免这个错误:
AttributeError: 'str' object has no attribute 'setdefault'
words = ['paste', 'pasta', 'pasha']
self.T = {}
for word in words:
current_dict = self.T
for index, letter in enumerate(word):
if index < len(word) - 1:
current_dict = current_dict.setdefault(letter, {})
current_dict[letter] = word
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句