51 lines
2.5 KiB
Python
51 lines
2.5 KiB
Python
''' ****** Задание 9 из 20 *********
|
||
* Комментарии — важная часть кода, особенно если вы хотите, чтобы другие поняли вашу логику.
|
||
Но когда программа запускается, интерпретатор просто игнорирует комментарии — всё, что начинается с #.
|
||
|
||
В этой задаче вы сами выступите в роли интерпретатора: научитесь очищать строки кода от комментариев!
|
||
|
||
Напишите программу, которая удаляет комментарии из кода.
|
||
Если строка состоит только из комментария — её не нужно выводить вообще.
|
||
|
||
Формат ввода
|
||
Вводятся строки программы.
|
||
Признаком остановки является пустая строка.
|
||
|
||
Формат вывода
|
||
Каждую строку нужно очистить от комментариев.
|
||
А если комментарий — вся строка, то выводить её не надо.
|
||
|
||
Примечание
|
||
Символ # в данной задаче используется только для комментариев.
|
||
|
||
|
||
Подсказка
|
||
Рассмотрите две ситуации:
|
||
|
||
Строка программы является комментарием. Это можно проверить методом startswith и просто не выводить её.
|
||
В строке есть комментарий. Проверку такой строки можно оформить совмещением метода find и моржового оператора:
|
||
|
||
if (index := row.find('#')) != -1:
|
||
... # обработка
|
||
Не забудьте, что пробелы в конце строк нам не нужны, а избавиться от них можно методом rstrip.
|
||
|
||
Пример 1
|
||
Ввод
|
||
|
||
# Моя первая супер-пупер программа
|
||
print("What is your name?") # Как тебя зовут?
|
||
name = input() # Сохраняем имя
|
||
print(f"Hello, {name}!") # Здороваемся# Конец моей супер-пупер программы
|
||
|
||
Вывод
|
||
|
||
print("What is your name?")
|
||
name = input()
|
||
print(f"Hello, {name}!")
|
||
'''
|
||
|
||
|
||
if __name__ == "__main__":
|
||
while (n := input()):
|
||
if not n.startswith('#'):
|
||
print(n[:(n.index('#') if '#' in n else len(n))]) |