import re
s = "3[a2[c]]"
s_final = s
rx = r'(\d+)\[([^][]*)]'
n = 1
while n:
s_final, n = re.subn(rx, lambda x: x.group(2) * int(x.group(1)), s_final)
print(s_final)
aW1wb3J0IHJlCnMgPSAiM1thMltjXV0iCnNfZmluYWwgPSBzCnJ4ID0gcicoXGQrKVxbKFteXVtdKildJwpuID0gMSAKd2hpbGUgbjoKICAgIHNfZmluYWwsIG4gPSByZS5zdWJuKHJ4LCBsYW1iZGEgeDogeC5ncm91cCgyKSAqIGludCh4Lmdyb3VwKDEpKSwgc19maW5hbCkKCnByaW50KHNfZmluYWwpCgo=