gpt4 book ai didi

python - 使用字符作为键和值添加字典条目

转载 作者:太空宇宙 更新时间:2023-11-03 14:38:24 25 4
gpt4 key购买 nike

我有一个空字典,我想使用 while 循环添加到其中,还有一个字符串,我想使用相同的循环进行迭代。我想要做的是使用字符 at 作为键,at+1 作为值添加到字典中。在读取字符串时,如果循环遇到字典中已有的键,它会将 at 处的值添加到字典中已有的值中。一旦达到字符串的长度 - 1,它就会停止。

假设我得到了字符串“Hello”来制作字典。理想情况下,我的循环会将“H”读取为第一个字母,然后使用“H”作为键、“e”作为值创建一个条目。当涉及到“l”时,它会创建一个以“l”为键、“l”为值的条目。然后,一个以“l”为键、“o”为值的条目。

这是到目前为止我的功能。它不是从第 0 个索引开始,而是从第一个索引开始:

    def add(self, word):
__first += word[0]
at = 0
while (at < len(word)-1):
__follow["""word[at] as the key"""] += word[at+1] #The next character as the value
at += 1

该行的正确语法是什么:

__follow["""word[at] as the key"""] += word[at+1]

最佳答案

字符串可以用作字典键,因此您应该能够执行 __follow[word[at]] += word[at + 1]。但是,您还需要使用 defaultdict ( docs ) 提供默认值:

import collections

__follow = collections.defaultdict(str)

如果您不这样做,第一次尝试附加到不存在的键上的 __follow 时将会失败,并出现 KeyError。使用 defaultdict,如果您访问尚不存在的键,您将得到(在本例中)一个空字符串。

<小时/>

顺便说一句,看起来您正在使用类方法。如果是这样,看起来 __first__follow 应该是 instance attributes如果你希望他们持久。

关于python - 使用字符作为键和值添加字典条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46740015/

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