Что сделать, чтобы вместо запятых стоял sep?

Задача:Напишите программу, которая считывает целое положительное число x и выводит на экран последовательность чисел x, 2x, 3x, 4x и 5x, разделённых тремя черточками.

Мой код:

x = int(input())
print(f'{x}, {x*2}, {x*3}, {x*4}, {x*5}', sep='---')

Выводится:7, 14, 21, 28, 35
Надо:7---14---21---28---35

Пробовал написать код так:

print(f'', {x}, {x*}, {x*3}, {x*4}, {x*5}, sep='---')

Результат: ---{7}---{14}---{21}---{28}---{35}

Возможно вообще решить через f? Если что, я новичок.


Ответы (4 шт):

Автор решения: Vasilijs

просто запишите так:

print(f"{x}---{x*2}---{x*3}---{x*4}---{x*5}")
→ Ссылка
Автор решения: Dmitry

Уберите f-строку в начале и пользуйте вот так

print(x, x*2, x*3, x*4, x*5, sep='---')

У вас появляется в начале разделитель, потому что вы даете ему пустую f-строку. Если вы просто укажите значения через запятую и укажете разделитель, тогда результат вас удовлетворит.

f-строка, на мой взгляд, в данной задаче - излишек, который не дает удобств, а проблем добавляет

→ Ссылка
Автор решения: CrazyElf

Ещё можно так, чтобы не повторять почти одинаковый код, а использовать цикл:

x = int(input())
print(*[x*i for i in range(1, 6)], sep='---')

* перед списком распакует список в набор отдельных аргументов для функции print.

→ Ссылка
Автор решения: TROLOLO

лол вы че

x = int(input())
print(x, 2 * x, 3 * x, 4 * x, 5 * x, sep='---')
→ Ссылка