У меня есть строка типа '.... ((... ((...', для которой я должен сгенерировать другую строку 'ss (4) h5 (3) сс (3) h2 (2) сс (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()
Как изменить код, чтобы получить желаемый результат?
Хорошее усилие - я могу спросить, если вы застряли Таким образом, он подходит к проблеме из-за того, что она является присвоением какого-то рода или вы открыты для других вариантов Pythonic? –
@JonClements Я открыт для любых вариантов pythonic. Я просто хочу получить желаемый результат. – coderSree