我用了四种方法定义函数,涵盖了有无参数和有无返回值方法,以便大家学习并掌握这四种方法。
既然这四种方法都能计算出结果为什么函数一定要定义参数和返回值呢?
为了这个问题我也问了一个老师,经过老师的指点我才明白我这几个函数出现的短板。 前三种情况有些没有参数,有些没有返回值,虽然得倒了想要的结果,但是有一个硬伤,就是1和3两个函数只能计算a和b的计算结果,如果程序还需要做c + d 的加法运算这个函数就不能被调用了,如果程序都是这样写的,程序会变的十分庞大。而且可能会出现许多个函数都是使用同一方法进行计算。
而且像1和2这两个函数没有定义返回值,像这样打印结果还没有什么区别,如果不是需要打印,而是需要将结果带入到别的别的函数进行再次计算这种方法就不方便了。大家要是方便操作的话你们会发现,把函数内部的print函数注释掉的话,调用打印该函数会得到一个none空的一个返回值,也就是num函数并没有计算,而且也不知道要把什么结果返回给我。
"""
问
a = 10 b = 20,用函数定义计算a + b,并打印结果
"""
a = 10
b = 20
# ---------------------------------------------------
# 函数1
def nums_1(): # 没有参数没有返回值
result_1 = a + b
print(result_1)
nums_1()
# ---------------------------------------------------
# 函数2
def nums_2(x, y): # 有参数没有返回值
result_2 = x + y
print(result_2)
nums_2(a, b)
# ---------------------------------------------------
# 函数3
def nums_3(): # 没有参数,有返回值
result_3 = a + b
return result_3
m = nums_3()
print(m)
# ---------------------------------------------------
# 函数4
def num_4(x, y): # 有参数有返回值
result_4 = x + y
return result_4
n = num_4(a, b)
print(n)