解析python开发中语句print和return混用详解

2018-03-12 10:34:51 1268浏览

有许多python初学者,当他们刚刚学完函数,准备大展身手的时候总是会莫名出现一些错误,然而更奇葩的是竟然没有报错!抓耳挠腮很久也没能解决问题。今天我就为大家解释一下函数中出现的print()与return混用的问题。(代码运行软件pycharm)


请看下面代码:

deffunc():

print("yes")

func()

#运行结果是:

yes

Processfinishedwithexitcode0

大家都知道print()是打印函数,会打印括号内的值,且没有返回值。代码中只要执行到这一步,输出结果中总会打印出括号内的内容和表达式的值。但是当我们将print()换成return结果会如何呢?

deffunc():

return"yes"

func()

#运行结果是:

Processfinishedwithexitcode0

没错!你没看错哦,运行结果是没有输出结果。这是为什么呢?

return用在函数内部表示当调用该函数时,返回值给被调用者。也就是说当函数func()被调用时,会有一个返回值,但是却没有承接返回值的变量,所以就没有输出。那么我们来修改一下代码:

deffunc():

return"yes"

f=func()

print(f)

#运行结果是:

yes

Processfinishedwithexitcode0

OK,结果终于出来了。为了让大家能够更好地了解print()与return的功能,下面我为大家举了个例子,希望对大家有所帮助。

(如果函数中没有任何执行语句,函数执行完毕后也会返回结果,只是结果为None。)

deffunc():

print("yes")

deffunc2():

return"not"

deffunc3():

pass

func()

print('**********')

func2()

print('**********')

f=func()

print(f)

print('**********')

f2=func2()

print(f2)

print('**********')

f3=func3()

print(f3)

print('**********')

#运行结果:

yes#func()的运行结果

**********

**********#func2()的运行结果

yes#print(f)的运行结果

None

**********

not#print(f2)的运行结果

**********

None#print(f3)的运行结果

**********

最后想要了解更多关于Python发展前景趋势,请关注扣丁学堂python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供最新的Python视频教程系统,通过千锋扣丁学堂金牌讲师在线录制的Python视频教程课程,让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python开发工程师技术交流群:279521237。



扣丁学堂微信公众号



关注微信公众号获取更多学习资料



查看更多关于"Python开发资讯"的相关文章>>

标签: Python视频教程 Python基础教程 Python爬虫 Python培训 Python开发工程师

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号