python 函数返回值的特殊情况

今天没事和大家一起聊聊python 函数返回值的特殊情况,之前我也碰到过类似方面的问题,到后来查阅了一些资料后,发现原来是这样!

我记得很久以前和大家聊过python列表操作方法python列表非 常的强大,提供了很多内置的方法使得你可以通过python的列表结构和操作做很多你想要的事情,我记得它里面有一些方法,比如append,还有 sort方法,这几个方法应该在你的程序里时不时会出现吧,可见频率之高!我当时开始学习的话,用这2个列表方法的话,我是按照下面的方式来用的:

a = [1,5,11,2]
x = a.append('b')

y = a.sort()

我当时学python的时候也许是受其它语言的影响,认为只要是函数的话,就有返回值,应该就可以返回一些想要的结果,其实你自己在编辑器里运行
上面的方法的话,输出的结果不会是你想要的,而是一片空白!呵呵。原因在哪呢?

原 来python的有些内置方法是不返回具体的内容的,而是返回一个None,这个就是今天我想说的一个话题,return在python函数里面是可选 的,当一个函数无法准确的返回值时,函数就会运行到最后然后退出,也就是说所有的函数都有返回值,如果你不提供返回值的话,函数默认返回一个None。 append,sort等方法应该就属于这个情况,所以大家以后碰到函数返回值输出空白的话,那就要想想是不是返回None,而只是你原来的变量被原地的 改变了。


原创文章请注明转载自老王python,本文地址:http://www.cnpythoner.com/post/139.html

posted @ 2012-11-29 11:29  老王python  阅读(569)  评论(0编辑  收藏  举报