一个数的乘法表的问题

2024-10-01 07:17:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图编写一个函数,向我显示一个数字的乘法表:

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值

我必须用报税表,不能用印刷品

我该怎么办?(我必须使用退货而不是打印)


Tags: 函数inforreturndef方式range数字
3条回答

请尝试以下脚本:

def tabellina(n):
   joint = ""
   for i in range (1,11):
       joint = joint + (" %s" % n*i)
   return joint

如果使用return,它返回n值的原因是循环没有完全运行。使用return时,它返回退出函数的值。循环的其余部分永远不会执行

您想要的是返回一个数组。最简单的方法可能是list comprehension

def tabellina(n):
    return [n*i for i in range(11)]

您可以将输出保存为字符串,然后返回该字符串。例如:

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

您可以根据需要将' '替换为任何设备(如','

相关问题 更多 >