在函数里我们会经常遇到print以及return、yiled
可是他们三者之间有什么联系和区别呢?
现在我们就来看一下如何区别三者,认识三者之间的含义,这对我们下一步的学习有着不小的影响。
首先是print,print就是打印的意思,可是它和return的具体区别在哪里呢?
print 和 return 的区别:
print 仅仅是打印在控制台,而return则是将return后面的部分作为返回值:作为函数的输出,可以赋值给变量,继续使用这个返回值做其他的事情
return语句在同一个函数中可以出现多次,但是只要有一个得到执行,就会直接结束函数的执行
下面可以看一下代码
def login():
print('欢迎登录')
#在这里直接调用函数即可,不需要其他的操作
login()
def login()
return '欢迎登录'
#这里我们先将函数调用赋值给一个变量a, 在去打印这个a
# return 的好处就是变量a可以用到其他的地方(比如其他的函数中), 而print只能用于当前函数
a = login()
print(a)
再来看一下yiled与return的区别
yield 和 return的区别:
return:在函数中给返回某个值,然后函数结束运行,一般没有返回值类型,就不用写return
yield:带 yield 的函数是一个生成器,在函数内部碰到 yield 的时候,函数会返回某个值,并且停留在这个位置,当下次执行函数后,会在上次停留的位置继续运行(可以把yiled想象成一个游戏存档,每当程序运行时,都会从上一次结束的时候开始运行)
def f():
print('f1')
yield 1
print('f2')
yield 2
for i in f():
print(i)
# f1
# 1
# f2
# 2