Точка с запятой и перенос строк

Тренажер по Python для пользователей с начальным уровнем подготовки.

Тренажер по Python

В этом тренажёре вы разберётесь, как в Python работают переносы строк и точка с запятой. Часто новички переносят в Python представления из других языков и пытаются ставить ; в конце каждой строки или писать по несколько операторов подряд без разделителя. Здесь вы увидите, когда точка с запятой действительно уместна, а когда достаточно обычного переноса строки. Мы также затронем явное продолжение строки с помощью обратного слэша, перенос внутри скобок и особенности записи нескольких инструкций в одной строке после двоеточия.
Часть заданий будет на сопоставление понятий, часть — на исправление реальных синтаксических ошибок, часть — на сборку корректного фрагмента программы из кусочков. В нескольких упражнениях нужно будет предсказать вывод кода, внимательно проследив, какие именно операторы выполняются и в каком порядке. Где‑то потребуется аккуратно расставить точки с запятой, а где‑то наоборот — заменить их обычным переносом строки. Если встретите незнакомое слово вроде оператор, можно навести на него курсор и посмотреть подсказку.

Список тем

Сопоставьте приёмы разделения и продолжения строк

id: 39948_task1

В этом задании собраны четыре распространённых приёма работы со строками кода в Python: обычный перенос строки, точка с запятой, обратный слэш и перенос внутри скобок. В левой колонке описано, что делает каждый приём, а в правой — даны его текстовые или символьные обозначения. Ваша задача — сопоставить каждое описание с соответствующим символом или конструкцией. Обратите внимание на формулировки: они позволяют однозначно понять, где речь идёт о разделении операторов, а где — о продолжении длинного выражения.

Сопоставьте строки в правой части с соответствующими строками в левой по порядковому номеру
Отделяет один оператор от другого при записи нескольких операторов в одной строке
Определяет конец простой инструкции, когда она записана на отдельной строке
Позволяет явно продолжить строку кода, если выражение не помещается в одну строку
Позволяет переносить длинные выражения внутри скобок без обратного слэша
;
перенос строки (нажатие Enter в конце строки)
\
( ... ), [ ... ] или { ... } вокруг выражения
Сообщения
Проверить
Показать подсказку

Разделите несколько операторов в одной строке

id: 39948_task2

В этом фрагменте программы подсчитывается сумма элементов списка и одновременно выводится промежуточный результат. Автор решил поместить несколько операторов в одну строку, но не добавил между ними разделитель. Из‑за этого код станет синтаксически неверным. Вставьте подходящий символ в отмеченные места так, чтобы цикл и заключительные выводы работали корректно, а логика программы сохранилась.

Заполните пропуски
numbers = [1, 2, 3]
sum_value = 0

for n in numbers:
    sum_value += n input1S print(sum_value)

print("Готово") input2S print(sum_value)
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Вывод при смешении точек с запятой и переносов строк

id: 39948_task4

Посмотрите на фрагмент программы, в котором переменные объявляются и используются как в отдельных строках, так и в виде нескольких операторов, записанных через точку с запятой. Подумайте, в каком порядке выполняются присваивания и вызовы print, и как это влияет на вывод. Варианты ответа различаются не только набором чисел, но и их расположением по строкам, так что важно учитывать каждый перенос строки.

Выберите правильный вариант ответа
x = 1; y = 2
print(x); print(y)
z = x + y
print(z)
Сообщения
Проверить
Показать подсказку

Соберите корректный if без точки с запятой в заголовке

id: 39948_task5

Из предложенных строк нужно собрать небольшой фрагмент программы, который создаёт переменную value, проверяет её на чётность и при выполнении условия выводит два сообщения в отдельные строки. Некоторые варианты содержат синтаксически неверные конструкции или нарушают сформулированную цель (например, размещают оба вывода в одной строке). Выберите только те строки и в таком порядке, чтобы получился понятный и корректный код без лишних точек с запятой в заголовке условия.

Перетяните в правильном порядке строки из одного блока в другой
value = 10
if value % 2 == 0:
    print("even")
    print("done")
if value % 2 == 0; print("even")
value = 10; if value % 2 == 0:
print("even"); print("done")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Сделайте вторую версию кода однострочной

id: 39948_task7

Код ниже показывает два способа выполнить одни и те же действия над счётчиком. В первой версии каждое действие расположено на отдельной строке, во второй — всё должно быть записано в одну строку. Однако разделители между операторами во второй версии не расставлены. Используя банк токенов, заполните пропуски так, чтобы вторая версия действительно стала однострочным эквивалентом первой, а лишние символы из банка остались неиспользованными.

Нужно правильно расставить в пропуски предложенные варианты
# Вариант 1: переносы строк
counter = 0
counter += 1
print(counter)

# Вариант 2: однострочная запись
counter2 = 0 input1S counter2 += 1 input2S print(counter2)
;
;
\
:
,
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Несколько операторов после двоеточия

id: 39948_task8

В этом примере условие if записано в одной строке вместе с двумя операторами: сначала выводом строки, а затем изменением переменной. Оба оператора разделены точкой с запятой и находятся после двоеточия, поэтому входят в тело условия. Ваша задача — определить, что именно будет выведено на экран после выполнения всего фрагмента и в каком порядке появятся строки.

Выберите правильный вариант ответа
x = 0
if x == 0: print("zero"); x = 1
print(x)
Сообщения
Проверить
Показать подсказку

Точка с запятой вместо двоеточия в заголовке if

id: 39948_task9

В этом фрагменте кода автор по привычке из другого языка поставил точку с запятой в строке с условием if там, где Python ожидает двоеточие. Из‑за этого программа не запускается, хотя остальная структура — отступы и вложенный print — выглядит корректно. Исправьте заголовок условия так, чтобы код стал валидным и при достижении нужного возраста выводил сообщение о совершеннолетии, а затем строку «done».

Найдите ошибку и исправьте
age = 20
if age >= 18;
    print("adult")
print("done")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку
НайтиКурс.Ру