在Python中使用字符串作为代码进行解码

时间:2018-11-22 17:24:40

标签: python arrays string python-3.x loops

我要做的是有一个程序来压缩AAABBBBCAAAaaDD-> A3B4CA3a2D2之类的字符串,然后将其解压缩。第一个功能已经可以使用,但是第二个功能似乎无法查看字符串的第一个元素:

taba = list(string)
decompressed = ''

for i in range(2, len(taba)):
    k = 0
    if str(taba[i]).isnumeric():
        while k < int(taba[i]):
            decompressed += taba[i-1]
            k += 1

对于输入= AAABBBBCAAAaaDD,字符串= A3B4CA3a2D2,并且对该字符串进行解压缩后将返回BBBBCAAAaaDD。是什么导致循环不包含taba [2-1]?

2 个答案:

答案 0 :(得分:0)

确定是因为您是从2而不是0开始编制索引?这背后的原因是什么?您想完成什么?

答案 1 :(得分:0)

好吧,您的for循环显然省去了前两个字母。

for i in range(2, len(taba)):

您需要从0开始循环。