Проблема с таблицей умножения числа - PullRequest
0 голосов
/ 19 января 2020

Я пытаюсь написать функцию, которая показывает мне таблицу умножения числа:

def tabellina(n):

   for i in range (1,11):

       print(n*i)

Если я напишу функцию таким образом, она будет работать нормально. Если я поставлю 4 вместо n, он напечатает:

4,8,12,16,20,24,28 ... 40

Но если я использую return вместо print, он больше не работает и просто возвращает мне значение n.

Я должен использовать возврат, и я не могу использовать печать

Что мне делать? (Я ДОЛЖЕН использовать return НЕ печатать)

Ответы [ 3 ]

1 голос
/ 19 января 2020

Причина, по которой он возвращает значение n, если вы используете return, заключается в том, что l oop работает не полностью. Когда вы используете return, он возвращает значение, которое выходит из функции. Остальная часть l oop никогда не выполняется.

Вместо этого вы хотите вернуть массив. Самый простой способ - это понимание списка :

def tabellina(n):
    return [n*i for i in range(11)]
0 голосов
/ 19 января 2020

Попробуйте следующий скрипт:

def tabellina(n):
   joint = ""
   for i in range (1,11):
       joint = joint + (" %s" % n*i)
   return joint
0 голосов
/ 19 января 2020

вы можете сохранить вывод в строку, а затем вернуть его. Например:

def tabellina(n):
   table = ''
   for i in range (1,11):
       table += ((n*i) + ' ')
   return table

Вы можете заменить ' ' любым делителем (например, ','), как хотите.

...