Я пытаюсь append
символ в строке после каждых трех символов Например, если моя строка NYCLHRNYC
результат будет NYC-LHR-NYC
Длина строки всегда кратна 3Python: String Manipulation
Я написал следующий код:
x = raw_input("Enter the route")
print "Route: %s" %x
length = len(x)
print length
if length == 6:
newx= x[0:3] +"-"+ x[3:6]
elif length == 9:
newx= x[0:3] +"-"+ x[3:6] +"-"+ x[6:9]
elif length == 12:
newx= x[0:3] +"-"+ x[3:6] +"-"+ x[6:9] +"-"+ x[9:12]
elif length == 15:
newx= x[0:3] +"-"+ x[3:6] +"-"+ x[6:9] +"-"+ x[9:12]+"-"+ x[12:15]
elif length == 18:
newx= x[0:3] +"-"+ x[3:6] +"-"+ x[6:9] +"-"+ x[9:12]+"-"+ x[12:15]+"-"+ x[15:18]
elif length == 21:
newx= x[0:3] +"-"+ x[3:6] +"-"+ x[6:9] +"-"+ x[9:12]+"-"+ x[12:15]+"-"+ x[15:18]+"-"+ x[18:21]
print "After formattinng: %s" %newx
Теперь это очень механический способ сделать это. В большинстве случаев я не знал бы максимальную длину строки. Есть ли лучший способ сделать это с помощью for loop
или еще чего-нибудь?
Заранее благодарим за ответы.
так написать метод, который форматирует вашу строку (дать метод параметр вашей длины) и с немного математики, вы можете получить его работу;) –