<form id="pblhr"><nobr id="pblhr"></nobr></form>
              <form id="pblhr"><nobr id="pblhr"><th id="pblhr"></th></nobr></form>

                <address id="pblhr"></address>

                當前位置: 首頁 / 技術分享 / 正文
                好程序員Python培訓分享函數返回值的示例代碼詳解

                2020-12-01

                Python培訓

                  今天好程序員Python培訓分享函數返回值的示例代碼詳解,文中通過示例代碼介紹的非常詳細,下面我們一起來看一下吧。

                Python

                0x  00返回值簡介

                  回顧下,上一節簡單介紹了函數及其各種參數,其中也有簡單介紹printreturn的區別,print僅僅是打印在控制臺,而return則是將return后面的部分作為返回值作為函數的輸出,可以用變量接走,繼續使用該返回值做其它事。

                 

                函數需要先定義后調用,函數體中return語句的結果就是返回值。如果一個函數沒有reutrn語句,其實它有一個隱含的return語句,返回值是None,類型也是'NoneType'。

                 

                return語句的作用:結束函數調用、返回值

                 

                0x   01指定返回值與隱含返回值

                 

                函數體中return語句有指定返回值時返回的就是其值

                 

                函數體中沒有return語句時,函數運行結束會隱含返回一個None作為返回值,類型是NoneType,與return、returnNone等效,都是返回None。

                 

                指定return返回值函數舉例:

                 

                def showplus(x):

                  print(x)

                  return x + 1

                    

                num = showplus(6)

                add = num + 2

                print(add)

                 

                輸出結果:

                 

                6

                9

                 

                隱含returnNone舉例:

                 

                def showplus(x):

                  print(x)

                  

                num = showplus(6)

                print(num)

                print(type(num))

                 

                輸出結果:

                 

                6

                None

                <class 'NoneType'>

                 

                0x02return語句位置與多條return語句

                 

                python函數使用return語句返回"返回值",可以將其賦給其它變量作其它的用處

                 

                所有函數都有返回值,如果沒有return語句,會隱式地調用returnNone作為返回值

                 

                一個函數可以存在多條return語句,但只有一條可以被執行,如果沒有一條reutrn語句被執行,同樣會隱式調用returnNone作為返回值

                 

                如果有必要,可以顯式調用returnNone明確返回一個None(空值對象)作為返回值,可以簡寫為return,不過python中懶惰即美德,所以一般能不寫就不寫

                 

                如果函數執行了return語句,函數會立刻返回,結束調用,return之后的其它語句都不會被執行了

                 

                舉例1

                 

                def showplus(x):

                  print(x)

                  return x + 1

                  print(x + 1) #該語句會執行么

                print(showplus(6))

                 

                輸出結果:

                 

                6

                7

                 

                舉例2

                 

                def showplus(x):

                  print(x)    # 5

                  return x + 1  # 6

                  return x + 2  # 該語句也不會被執行

                print(showplus(5))

                 

                輸出結果:

                 

                5

                6

                 

                舉例3

                 

                def guess(x):

                  if x > 3:

                    return "> 3"

                  else:

                    return "<= 3"

                print(guess(10))

                print(guess(2))

                 

                輸出結果:

                 

                > 3

                <= 3

                 

                舉例4:

                 

                # for .. else .. 語句 (意外終止情況)

                # 表示如果 for 語句段的內容正常循環結果才會執行 else 段的語句,如果 for 在循環過程中時被 break 或者 return 語句意外終止循環,就不會執行 else 段中的語句。

                def fn(x):

                  for i in range(x):

                    if i > 4:

                      return i

                  else:

                    print("{} is not greater than 4".format(x))

                print(fn(3))

                print(fn(6))

                返回結果:

                is not greater than 4

                None

                0x03返回值類型

                無論定義的是返回什么類型,return只能返回單值,但值可以存在多個元素。

                return[1,3,5]是指返回一個列表,是一個列表對象,1,3,5分別是這個列表的元素

                return1,3,5看似返回多個值,隱式地被Python封裝成了一個元祖返回

                舉例1

                def fn():

                  return 3  #單值時,返回的是什么類型

                print(fn())

                print(type(fn()))

                輸出結果:

                <class 'int'>    #int 整數類型

                舉例2

                def showlist():

                  return [1,3,5]  #多元素,返回的是什么類型

                print(type(showlist()))

                print(showlist())

                輸出結果:

                <class 'list'>

                [1, 3, 5]    #列表類型

                舉例3

                def showlist():

                  return (2,4,6)  #多元素,返回的是什么類型

                print(type(showlist()))

                print(showlist())

                輸出結果:

                <class 'tuple'>    #元祖類型

                (2, 4, 6)

                舉例4

                def showlist():

                  return 2,4,6  #多值時,不指定類型

                print(type(showlist()))

                print(showlist())

                輸出結果:

                <class 'tuple'>    #默認封裝成元祖類型

                0x04函數嵌套

                函數有可見范圍(內外可見關系),這就是作用域的概念。

                內部函數不能被外部直接調用,會拋異常NameError。

                舉例1

                def outer():

                  def inner(): #可以理解為內部函數

                    print("inner")

                  print("outer")

                outer()

                輸出結果:

                outer

                此時如果調用outer(),只會執行print("outer"),因為inner雖然在outer函數內,但它也是一個函數,函數如果要調用,就必須用'函數名()'方式。

                舉例2

                def outer():

                  def inner():

                    print("inner")

                  print("outer")

                inner()  #外部無法引用內部函數,內部函數只在本地作用域有效

                輸出結果,拋出異常:

                Traceback (most recent call last):

                  File "C:/python/return_value.py", line 6, in <module>

                    inner()

                NameError: name 'inner' is not defined

                舉例3

                def outer():

                  def inner():

                    print("inner")

                  print("outer")

                  inner()

                outer()

                輸出結果:

                outer

                inner

                此節介紹了函數的返回值、返回值的作用,指定與不指定返回值時的不同,返回值類型,以及函數嵌套時返回值的使用。

                以上就是關于好程序員Python培訓之函數返回值的示例代碼詳解的全部內容,希望對大家的學習有所幫助,最后想要了解更多關于Python方面內容的小伙伴,請關注好程序員Python培訓官網、微信公眾號等平臺.

                Python培訓:http://www.blouan.com/python_class.shtml

                好程序員公眾號

                • · 剖析行業發展趨勢
                • · 匯聚企業項目源碼

                好程序員開班動態

                More+
                • HTML5大前端 <高端班>

                  開班時間:2021-04-12(深圳)

                  開班盛況

                  開班時間:2021-05-17(北京)

                  開班盛況
                • 大數據+人工智能 <高端班>

                  開班時間:2021-03-22(杭州)

                  開班盛況

                  開班時間:2021-04-26(北京)

                  開班盛況
                • JavaEE分布式開發 <高端班>

                  開班時間:2021-05-10(北京)

                  開班盛況

                  開班時間:2021-02-22(北京)

                  開班盛況
                • Python人工智能+數據分析 <高端班>

                  開班時間:2021-07-12(北京)

                  預約報名

                  開班時間:2020-09-21(上海)

                  開班盛況
                • 云計算開發 <高端班>

                  開班時間:2021-07-12(北京)

                  預約報名

                  開班時間:2019-07-22(北京)

                  開班盛況
                在線咨詢
                試聽
                入學教程
                立即報名

                Copyright 2011-2020 北京千鋒互聯科技有限公司 .All Right 京ICP備12003911號-5 京公網安備 11010802035720號

                骚货在线

                      <form id="pblhr"><nobr id="pblhr"></nobr></form>
                            <form id="pblhr"><nobr id="pblhr"><th id="pblhr"></th></nobr></form>

                              <address id="pblhr"></address>