- 23, Oct 2024
- #1
Задача
Ваша миссия — создать программу, которая проверяет код Python. Решение можно написать на любом языке!
Он должен принимать входные данные, содержащие код Python. В программу необходимо добавить
before each block of non-whitespace lines.# This is not pythonic! from os.path import abspath # This is not pythonic! lines = [] with open(__file__, 'r') as f: for line in f: lines.append(line) # This is not pythonic! if lines is not None: # This is not pythonic! newLines = [] hasReviewedBlock = False # This is not pythonic! for line in lines: if len(line) > 1: # \n if hasReviewedBlock == False: newLines.append("# This is not pythonic!\n") hasReviewedBlock = True else: hasReviewedBlock = False # This is not pythonic! newLines.append(line) with open("d:/test.py", 'w') as f: for line in newLines: f.write(line);
Вход
- Данные можно вводить через стандартный ввод.
- Данные будут содержать как минимум 3 строки с одной пустой между ними.
их.
from os.path import abspath
lines = []
with open(__file__, 'r') as f:
for line in f:
lines.append(line)
if lines is not None:
newLines = []
hasReviewedBlock = False
for line in lines:
if len(line) > 1: # \n
if hasReviewedBlock == False:
newLines.append("# This is not pythonic!\n")
hasReviewedBlock = True
else:
hasReviewedBlock = False
newLines.append(line)
with open("d:/test.py", 'w') as f:
for line in newLines:
f.write(line);
Пример минимального ввода.
print "Hello World!"
Print "Bye World!"
Пример ввода
Выход
Вывод должен быть записан в STDOUT или ближайший альтернативный формат.
# This is not pythonic!
Пример вывода
Оценка:
Выигрывает наименьшее количество байтов. -5 байт, если ваша программа может использоваться в качестве допустимого ввода.