为什么python在计算后不返回任何内容?

时间:2018-07-25 11:55:08

标签: python

我想要一个可以向我输出乘法表的工具。 所以我这样:

def multiplicationTable(number):
    for x in range(1, 11):
        result = number * x
        print(f'{number} X {x} = {result}')

result = multiplicationTable(5)
print(result)

这按预期返回了一个乘法表,但后面跟着一个额外的None类型值。

5 X 1 = 5
5 X 2 = 10
5 X 3 = 15
5 X 4 = 20
5 X 5 = 25
5 X 6 = 30
5 X 7 = 35
5 X 8 = 40
5 X 9 = 45
5 X 10 = 50
None

为什么会这样。

1 个答案:

答案 0 :(得分:2)

multiplicationTable(number)没有返回值。

默认情况下,如果未提供任何return值,则python函数将返回None表示它已成功执行。您在其他语言中也有相同的行为。

为了说明这一点,我让您的函数最后返回了一些内容:

def multiplicationTable(number):
    for x in range(1, 11):
        result = number * x
        print(f'{number} X {x} = {result}')
    return 'I have finished'

result = multiplicationTable(5)
print(result)

输出:

5 X 1 = 5
5 X 2 = 10
5 X 3 = 15
5 X 4 = 20
5 X 5 = 25
5 X 6 = 30
5 X 7 = 35
5 X 8 = 40
5 X 9 = 45
5 X 10 = 50
I have finished