最近在学习python基础时碰到个疑惑的问题,为什么print一个函数时,会同时打印出None值。在看了多篇文章后终于弄明白了,以此记录下来:
因为print是个函数,在print中执行的函数中有return时,就会打印出return值,当 在print中执行的函数中 没有return时,就会返回None。
python中默认设置:如果函数没有return语句,函数执行完毕后返回结果None
print(get_name()) 相当于执行了两个步骤:
1.运行get_name()时,打印出结果:张三,,注意是 执行print(“张三”) 的结果,而不是 get_nam()函数的返回结果。
2.print打印 get_name()函数的返回值,因为没有return,所以get_name()返回None,print(None) =>None
如果get_name()中不使用print就更好理解了
引用
Q:为什么返回结果有个None?
A:因为python中print函数需要返回值,如果你在print函数中所放的函数没有返回值,那么print将会return None
请注意,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。因此,函数内部通过条件判断和循环可以实现非常复杂的逻辑。
如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。return None可以简写为return。
引用自:https://blog.csdn.net/qq_42897012/article/details/93491927