#python#return和print的一些理解

代码 (1) ++++++++++++++++++++++++++++++++++

x = 1
y = 2
def add (x, y):
  z = x + y
  return z
print (add(x,y))

代码 (2) ++++++++++++++++++++++++++++++++++

x = 1
y = 2
def add (x, y):
  z = x + y
  print z
print (add(x,y))

输出结果 (相同) ++++++++++++++++++++++++++++++++++

>>> 3
这里代码1的结果是打印返回值而得到的,而代码2的结果是在打印函数add (x, y)时,add (x, y)执行print z语句而得到的,其返回值是None,所以输出结果应为

3

None

返回值只有打印才能得到,例如

def a():

  print('ss')

def b():

  return 'ss'

直接运行a(),是有结果的,而直接运行b()是没有结果的,只有运行print(b())才可以显示'ss'。

另外,将函数赋值给变量可以获得返回值,如上函数b(),加上

c=b()

c

是有结果的,因为c得到了b()的返回值'ss'。

另外,在交互模式下,return的结果会自动打印出来,而作为脚本单独运行时则需要print函数才能显示。

猜你喜欢

转载自www.cnblogs.com/wushujun/p/9202820.html