Вопрос задан 02.10.2026 в 12:35.
Предмет Информатика.
Спрашивает Сбродова Анастасия.
Python. Напишите программу, которая будет удалять все комментарии из исходного файла с кодом на языке Python.
Пройдите по всем строкам в файле для поиска символа '#'. Обнаружив его, программа должна удалить все содержимое, начиная с этого символа и до конца строки. Гарантируется, что знак решётки не встречается в середине строки (то есть после какого-то текста, отступы до символа присутствовать могут). Сами строки удалять не нужно, количество строк в выводе должно совпадать с количеством строк в файле.
Выведите новое содержимое на экран. Имя файла подаётся на вход и заранее не известно. Если указанного файла не существует, необходимо вывести соответствующее сообщение об ошибке: FileNotFoundError: "Файл не найден". Если происходит другая ошибка, вывести сообщение об ошибке: Exception: "Неизвестная ошибка".
Ответы на вопрос
Отвечает Салтыков Семён.
Так как по условию знак # не встречается после обычного текста, можно искать его в каждой строке. Если нашли, оставляем только часть строки до этого символа. Саму строку не удаляем.
filename = input()
try:
with open(filename, 'r', encoding='utf-8') as file:
for line in file:
index = line.find('#')
if index != -1:
line = line[:index] + '\n'
print(line, end='')
except FileNotFoundError:
print('FileNotFoundError: "Файл не найден"')
except Exception:
print('Exception: "Неизвестная ошибка"')
Метод find возвращает номер позиции символа. Если символ не найден, он возвращает \(-1\).
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

