Python 中的游程编码
pythonserver side programmingprogramming
在本教程中,我们将学习如何在 Python 中创建游程编码。给定一个字符串,返回一个包含 char 和频率 的新字符串。
例如,字符串 tutorialspoint 将被编码为 t3u1o2r1i2a1l1s1p1n1。顺序是每个 char+frequency。将它们全部连接起来并返回。请参阅以下步骤来编写程序。
编写名为 run_length_encoding 的函数。
使用 OrderedDict 初始化字典,以获取字符的初始计数 0。
遍历字符串的每个字符并增加字典中的计数。
连接所有字符及其频率。然后打印。
初始化字符串并调用函数。
示例
让我们看看上述文本的代码。
# 导入集合 import collections # 函数 def run_length_encoding(string): # 初始化计数字典 count_dict = collections.OrderedDict.fromkeys(string, 0) # 遍历字符串 for char in string: # 增加频率 count_dict[char] += 1 # 初始化空编码字符串 encoded_string = "" # 连接所有字符及其频率 for key, value in count_dict.items(): # 连接 coded_string += key + str(value) # 打印编码字符串 print(encoded_string) # 初始化字符串 string = "tutorialspoint" # 调用函数 run_length_encoding(string) # 另一个字符串 string = "aaaaaabbbbbccccccczzzzzz" run_length_encoding(string)
输出
如果您运行上述代码,您将获得以下输出。
t3u1o2r1i2a1l1s1p1n1 a6b5c7z6
结论
如果您对本教程有任何疑问,请在评论部分中提及。