После "!" заменить все символы на "*"
Ввести строку. Если в строке есть символ "!", то заменить все символы после первого "!" на символ "*".
Если символа "!" нет в строке, то вывести об этом сообщение.
Подскажите, как заменить все символы после "!", а не один? (ничего на просторах интернета не нашла)
Ответы (3 шт):
Автор решения: S. Nick
→ Ссылка
Попробуйте так:
line = 'Если в строке есть символ "!", то заменить все символы после первого "!" на символ "*"'
index = line.find("!")
if index == -1:
print('Символа "!" нет в строке, вывести об этом сообщение.')
else:
line = line[0:index+1] + "*" * len(line[index+1:])
print(f'\nline = {line}')
line = 'Hello World'
index = line.find("!")
if index == -1:
print('\nСимвола "!" нет в строке, вывести об этом сообщение.')
else:
line = line[0:index+1] + "*" * len(line[index+1:])
print(f'line = {line}')
Автор решения: AdamBeno
→ Ссылка
Попробуйте так:
a = input()
if "!" in a:
x = a.index('!')
for i in range(x, len(a) - 1):
a = a[:i+1] + "*"
print(a)
else:
print('! Не найден')
Автор решения: Oranage_boy
→ Ссылка
Метод replace заменит все знаки стареы указанные знаки на новые. В данном случае к введённой строке сразу применяется метод replace,меняя все знаки "!" на "*".Повторно указанный replace поменяет "*" обратно на "!",но только первый элемент.
a = input('>').replace('!', '*').replace('*', '!', 1)
if '!' not in a:
print('! отсутствует')