Как убрать перевод строки при вызове print?

Пример:

a = int(input("Введите длину линии: "))

def line(a):
    for i in range(a):
        print("—")

print(line(a))

Всё работает без ошибок, вот только он выводит "—" его по одной на одну строку, а мне надо чтобы он вывел их всех в одну строку. Не знаете как это сделать?


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

Автор решения: Андрей NOP

В Python 3 вы можете использовать параметр end= функции print:

print("—", end="")

Подсмотрено здесь

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

Если вы выводите результат функции через print, то в самой функции не делайте print, а только формируйте строку, и возвращайте ее через return:

a = int(input("Введите длину линии: "))


def line(a):
    s = ''

    for i in range(a):
        s += '-'

    return s


print(line(a))

Можно функцию упростить до двух строк:

def line(a):
    return '-' * a
→ Ссылка
Автор решения: Sergey
print("Hello, ", end='')
print("world!")
→ Ссылка