Цикл for
повторяется для каждого символа в строке.Таким образом, вы по существу делаете:
print("9".strip("-"))
print("0".strip("-"))
print("0".strip("-"))
print("-".strip("-"))
print("8".strip("-"))
print("8".strip("-"))
print("8".strip("-"))
print("-".strip("-"))
print("9".strip("-"))
print("4".strip("-"))
print("3".strip("-"))
В случаях, когда строка не "-"
, strip("-")
ничего не меняет, поэтому она просто печатает эту строку;когда он равен "-"
, он становится пустой строкой и печатает ее.
По умолчанию print()
добавляет символ новой строки после печати аргумента.Вы можете использовать необязательный аргумент end=""
, чтобы изменить это.
phone =str(input("Enter a phone number")) #900-888-943
for i in phone:
print(i.strip("-"), end="")
print("") # Add a newline at the end
Но было бы проще просто напечатать phone.replace('-', '')
, как в другом ответе.