LeetCode | 394.字符串解码
主要逻辑
判断是"]" 取字母 合并
判断数字 乘上面的字母 加入列表
pending_str = "3[m2[c]]" temp_list = [] for i in pending_str: if i == "]": multiplier = "" int_num = 0 while temp_list[-1] != "[": # 判断如果是字母那就把它join下 multiplier = temp_list.pop() + multiplier temp_list.pop() # 删除 "[" while temp_list and temp_list[-1].isdigit(): # 判断如果是数字那就把它和上面字母相乘 int_num = temp_list.pop() temp_list.append(multiplier*int(int_num)) else: temp_list.append(i) print(temp_list[0])