我有一个字符串,如'....(((...((...',我需要生成另一个字符串'ss(4)h5(3)ss(3)h2(2)ss(3)'。
'.'代表'ss',连续的'.'数量在括号中。
'('代表'h5',连续的'('数量在括号中。
目前,我能得到输出'ss(4)h5(3)ss(3)',我的代码忽略了最后两个字符序列。这是我迄今为止所做的。
def main():
stringInput = raw_input("Enter the string:")
ssCount = 0
h5Count = 0
finalString = ""
ssString = ""
h5String = ""
ssCont = True
h5Cont = True
for i in range(0, len(stringInput), 1):
if stringInput[i] == ".":
h5Cont = False
if ssCont:
ssCount = ssCount + 1
ssString = "ss(" + str(ssCount) + ")"
ssCont = True
else:
finalString = finalString + ssString
ssCont = True
ssCount = 1
elif stringInput[i] == "(":
ssCont = False
if h5Cont:
h5Count = h5Count + 1
h5String = "h5(" + str(h5Count) + ")"
h5Cont = True
else:
finalString = finalString + h5String
h5Cont = True
h5Count = 1
print finalString
main()
如何修改代码以获得所需的输出?