代码示例:
def encode_word(word):
freq_dict = {} # 用于存储每个字符出现的次数
for letter in word:
if letter in freq_dict:
freq_dict[letter] += 1
else:
freq_dict[letter] = 1
encoded_output = ""
for letter in freq_dict:
encoded_output += letter + str(freq_dict[letter])
return encoded_output
以上代码使用了一个字典变量 freq_dict
,用于存储每个字符在给定字符串中出现的次数。 在第一个循环中,我们遍历字符串中的每个字符,并将其添加到 freq_dict
中。如果字符已经存在于字典中,则增加其计数器值。如果这是第一次出现该字符,则将其添加到字典中。
在第二个循环中,我们遍历 freq_dict
中存储的每个键(即字符)和值(即计数器)。将它们连接起来作为编码后输出的一部分,然后将其返回。
例如,如果我们将字符串 "hello" 作为参数传递给 encode_word
函数,则将生成以下输出:
encode_word("hello") # 返回 'h1e1l2o1'
因为该字符串中字符 'h'、'e'、'l' 和 'o' 的出现次数分别为 1、1、2 和 1。通过连接每个字符和它的计数,我们得到编码后的输出:'h1e1l2o1'。