定义函数的名称为什么不可以直接输出呢?
def fun(a,b):pass
print(fun)
本帖最后由 jackz007 于 2022-10-30 14:33 编辑
你想输出什么,怎么输出,请问?
函数只是一个工具,是供人使唤的,就像一把螺丝刀,你当然只是希望它可以帮助你拧螺丝就可以了,并不会希望它越俎代庖吧?函数也是,只需要把人们安排给他的工作做好悄悄返回结果就好,至于需不需要打印结果,那是主人需要考虑和决定的事情,这样,这个函数就更加具有通用性,可以供很多场合满足不同的需要而使用。
咱们人类不也一样吗,作为下属,你只需要把属于自己的工作做好,至于宣扬功劳那是领导的事情。 >>> def fun(a,b):
... print(a,b)
...
>>> fun(5,"SA")
5 SA
>>> def fun(a,b):
... return a*b
...
>>> print(fun(6,7))
42
>>>
本帖最后由 hrpzcf 于 2022-10-30 14:57 编辑
函数对象并没有重写__str__或者__repr__方法,你直接print它只会以默认方法打印函数内存地址。如果想打印函数名,你得这样def abc(a, b):
pass
print(abc.__name__) jackz007 发表于 2022-10-30 14:24
你想输出什么,怎么输出,请问?
函数只是一个工具,是供人使唤的,就像一把螺丝刀,你当然只 ...
是我的理解有误,刚学python,还在以将值赋给一个变量名的逻辑去理解这个fun(a,b)
使用def定义了一个叫fun名字函数,而在fun以下的内容是在fun内当中执行的内容,最终将结果返回了fun,那这样理解没错吧? 本帖最后由 jackz007 于 2022-10-30 16:51 编辑
a870950142 发表于 2022-10-30 16:29
是我的理解有误,刚学python,还在以将值赋给一个变量名的逻辑去理解这个fun(a,b)
使用def定义了一个 ...
fun() 是供调用的,就是说,它只是在被调用的时候才会被执行,在函数内,它接受 2 个输入参数 a 和 b,相当于函数的自变量,然后,计算出一个函数值,通过 return 反馈给函数调用者,就像 t = sin(pi // 6) ,用 pi // 6 作为参数调用函数 sin(),并使用变量 t 接受函数的返回值,那么,调用过后,t 的值是 0.5,就是函数 sin() 用 return 反馈回来的
页:
[1]