python 函數傳回值的特殊情況

來源:互聯網
上載者:User

今天沒事和大家一起聊聊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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.