Chr*_*ris 9 python printing return function
在python中我似乎没有理解返回函数.为什么在我可以打印时使用它?
def maximum(x, y):
if x > y:
print(x)
elif x == y:
print('The numbers are equal')
else:
print(y)
maximum(2, 3)
Run Code Online (Sandbox Code Playgroud)
这段代码给了我3
.但是使用return它会做同样的事情.
def maximum(x, y):
if x > y:
return x
elif x == y:
return 'The numbers are equal'
else:
return y
print(maximum(2, 3))
Run Code Online (Sandbox Code Playgroud)
那两者之间的区别是什么?对不起,这个巨大的菜鸟问题!
t3d*_*son 26
点
返回不是一个功能.它是一个控制流构造(就像if
else
构造一样).它可以让你"在函数调用之间随身携带数据".
分解
print
:将值作为输出字符串提供给用户.print(3)
会给'3'
屏幕一个字符串供用户查看.该计划将失去价值.
return
:给程序赋值.然后函数的调用者具有实际数据和数据类型(bool,int等等)return 3
将使用值3代替调用函数的位置.
示例时间
def ret():
return 3
def pri():
print(3)
4 + ret() # ret() is replaced with the number 3 when the function ret returns
>>> 7
4 + pri() # pri() prints 3 and implicitly returns None which can't be added
>>> 3
>>> TypeError cannot add int and NoneType
Run Code Online (Sandbox Code Playgroud)
Sil*_*ost 11
如果您需要保存印刷值,您会怎么做?看看文档和cf 中的好解释:
>>> def ret():
return 42
>>> def pri():
print(42)
>>> answer = pri()
42
>>> print(answer) # pri implicitly return None since it doesn't have return statement
None
>>> answer = ret()
>>> answer
42
Run Code Online (Sandbox Code Playgroud)
它return
与任何其他语言的陈述没有什么不同.
归档时间: |
|
查看次数: |
63484 次 |
最近记录: |