关于函数没有return,则返回为None是否这样理解(详情见正文)
def fun1(x):x = 666
print(x)
fun1(5)
print('**'*10)
print(fun1(5))
运行结果如下:
666 #这是fun1(5)执行结果
******************** #分隔符
666 #这是fun1(5)执行结果
None#这是fun1(5)运行后返回的结果,如果没有print,运行后也会返回一个None只是看不到,请问下是这样理解的吧?
本帖最后由 Twilight6 于 2020-8-7 00:24 编辑
666 # 这里是 fun1(5) 函数中的 print 函数的执行结果,属于 fun1(5) 函数运行的结果
********************
666 # 这里是 fun1(5) 函数中的 print 函数的执行结果 ,属于 fun1(5) 函数运行的结果
None # 这里理解的没错
当你设置了 return 返回值除 None 以外的值,那么最后一个打印的结果就不会出现 None 了
可以试试下面的加上 return 后的代码:
def fun1(x):
x = 666
return x
a = fun1(5)
print(a)
print('**'*10)
print(fun1(5))
输出结果:
666 # 这里是 fun1(5) 调用函数后返回值赋值给了 a 后 print(a) 的结果
********************
666 # 这里是直接调用函数 fun1(5) 后 print(fun1(5)) 打印的函数返回值的结果
我来讲一下:
你如果fun1(5)就调用了这个函数,就自然输出了,但是你又print了一遍,其实这个意思是输出返回值,可以没有返回值,所以是None 谢谢各位的解答 dong811019 发表于 2020-8-8 22:55
谢谢各位的解答
解决就好
页:
[1]