最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 函數(shù)返回值的示例代碼

 更新時(shí)間:2019年03月11日 11:24:07   作者:ihoneysec  
這篇文章主要介紹了Python 函數(shù)返回值的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

0x 00 返回值簡(jiǎn)介

回顧下,上一節(jié)簡(jiǎn)單介紹了函數(shù)及其各種參數(shù),其中也有簡(jiǎn)單介紹 print 和 return 的區(qū)別,print 僅僅是打印在控制臺(tái),而 return 則是將 return 后面的部分作為返回值作為函數(shù)的輸出,可以用變量接走,繼續(xù)使用該返回值做其它事。

函數(shù)需要先定義后調(diào)用,函數(shù)體中 return 語(yǔ)句的結(jié)果就是返回值。如果一個(gè)函數(shù)沒(méi)有 reutrn 語(yǔ)句,其實(shí)它有一個(gè)隱含的 return 語(yǔ)句,返回值是 None,類型也是 'NoneType'。

return 語(yǔ)句的作用:結(jié)束函數(shù)調(diào)用、返回值

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

函數(shù)體中 return 語(yǔ)句有指定返回值時(shí)返回的就是其值

函數(shù)體中沒(méi)有 return 語(yǔ)句時(shí),函數(shù)運(yùn)行結(jié)束會(huì)隱含返回一個(gè) None 作為返回值,類型是 NoneType,與 return 、return None 等效,都是返回 None。

指定 return 返回值函數(shù)舉例:

def showplus(x):
  print(x)
  return x + 1
   
num = showplus(6)
add = num + 2
print(add)

輸出結(jié)果:
6

隱含 return None 舉例:

def showplus(x):
  print(x)
 
num = showplus(6)
print(num)
print(type(num))

輸出結(jié)果:
6
None
<class 'NoneType'>

0x 02 return 語(yǔ)句位置與多條 return 語(yǔ)句

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

所有函數(shù)都有返回值,如果沒(méi)有 return 語(yǔ)句,會(huì)隱式地調(diào)用 return None 作為返回值

一個(gè)函數(shù)可以存在多條 return 語(yǔ)句,但只有一條可以被執(zhí)行,如果沒(méi)有一條 reutrn 語(yǔ)句被執(zhí)行,同樣會(huì)隱式調(diào)用 return None 作為返回值

如果有必要,可以顯式調(diào)用 return None 明確返回一個(gè)None(空值對(duì)象)作為返回值,可以簡(jiǎn)寫為 return,不過(guò) python 中懶惰即美德,所以一般能不寫就不寫

如果函數(shù)執(zhí)行了 return 語(yǔ)句,函數(shù)會(huì)立刻返回,結(jié)束調(diào)用,return 之后的其它語(yǔ)句都不會(huì)被執(zhí)行了

舉例 1:

def showplus(x):
  print(x)
  return x + 1
  print(x + 1) #該語(yǔ)句會(huì)執(zhí)行么
print(showplus(6))

輸出結(jié)果:
6
7

舉例 2:

def showplus(x):
  print(x)    # 5
  return x + 1  # 6
  return x + 2  # 該語(yǔ)句也不會(huì)被執(zhí)行
print(showplus(5))

輸出結(jié)果:
5
6

舉例 3:

def guess(x):
  if x > 3:
    return "> 3"
  else:
    return "<= 3"
print(guess(10))
print(guess(2))

輸出結(jié)果:
> 3
<= 3

舉例 4:

# for .. else .. 語(yǔ)句 (意外終止情況)
# 表示如果 for 語(yǔ)句段的內(nèi)容正常循環(huán)結(jié)果才會(huì)執(zhí)行 else 段的語(yǔ)句,如果 for 在循環(huán)過(guò)程中時(shí)被 break 或者 return 語(yǔ)句意外終止循環(huán),就不會(huì)執(zhí)行 else 段中的語(yǔ)句。
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))

返回結(jié)果:
is not greater than 4
None

0x 03 返回值類型

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

return [1,3,5] 是指返回一個(gè)列表,是一個(gè)列表對(duì)象,1,3,5 分別是這個(gè)列表的元素

return 1,3,5 看似返回多個(gè)值,隱式地被Python封裝成了一個(gè)元祖返回

舉例 1:

def fn():
  return 3  #單值時(shí),返回的是什么類型
  
print(fn())
print(type(fn()))

輸出結(jié)果:
<class 'int'>    #int 整數(shù)類型

舉例 2:

def showlist():
  return [1,3,5]  #多元素,返回的是什么類型
print(type(showlist()))
print(showlist())

輸出結(jié)果:
<class 'list'>
[1, 3, 5]    #列表類型

舉例 3:

def showlist():
  return (2,4,6)  #多元素,返回的是什么類型
print(type(showlist()))
print(showlist())

輸出結(jié)果:
<class 'tuple'>    #元祖類型
(2, 4, 6)

舉例 4:

def showlist():
  return 2,4,6  #多值時(shí),不指定類型
print(type(showlist()))
print(showlist())

輸出結(jié)果:
<class 'tuple'>    #默認(rèn)封裝成元祖類型

0x 04 函數(shù)嵌套

函數(shù)有可見范圍(內(nèi)外可見關(guān)系),這就是作用域的概念。

內(nèi)部函數(shù)不能被外部直接調(diào)用,會(huì)拋異常 NameError。

舉例 1:

def outer():
  def inner(): #可以理解為內(nèi)部函數(shù)
    print("inner") 
  print("outer")
outer()

輸出結(jié)果:
outer

此時(shí)如果調(diào)用 outer(),只會(huì)執(zhí)行 print("outer"),因?yàn)?inner 雖然在 outer 函數(shù)內(nèi),但它也是一個(gè)函數(shù),函數(shù)如果要調(diào)用,就必須用 '函數(shù)名()' 方式。

舉例 2:

def outer():
  def inner():
    print("inner")
  print("outer")
inner()  #外部無(wú)法引用內(nèi)部函數(shù),內(nèi)部函數(shù)只在本地作用域有效

輸出結(jié)果,拋出異常:
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()

輸出結(jié)果:
outer
inner

總結(jié):

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

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Pythonic版二分查找實(shí)現(xiàn)過(guò)程原理解析

    Pythonic版二分查找實(shí)現(xiàn)過(guò)程原理解析

    這篇文章主要介紹了Pythonic版二分查找實(shí)現(xiàn)過(guò)程原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • python tkinter與Mysql數(shù)據(jù)庫(kù)交互實(shí)現(xiàn)賬號(hào)登陸

    python tkinter與Mysql數(shù)據(jù)庫(kù)交互實(shí)現(xiàn)賬號(hào)登陸

    本文主要介紹了python tkinter與Mysql數(shù)據(jù)庫(kù)交互實(shí)現(xiàn)賬號(hào)登陸,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Python編程之多態(tài)用法實(shí)例詳解

    Python編程之多態(tài)用法實(shí)例詳解

    這篇文章主要介紹了Python編程之多態(tài)用法,以實(shí)例形式詳細(xì)分析了Python中多態(tài)的使用技巧,需要的朋友可以參考下
    2015-05-05
  • python 裝飾器的基本使用

    python 裝飾器的基本使用

    這篇文章主要介紹了python 裝飾器的基本使用,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01
  • python庫(kù)h5py入門詳解

    python庫(kù)h5py入門詳解

    本文只是簡(jiǎn)單的對(duì)h5py庫(kù)的基本創(chuàng)建文件,數(shù)據(jù)集和讀取數(shù)據(jù)的方式進(jìn)行介紹,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Python安裝本地.whl文件的流程及注意事項(xiàng)

    Python安裝本地.whl文件的流程及注意事項(xiàng)

    在Python的生態(tài)環(huán)境中.whl文件是一種預(yù)編譯的二進(jìn)制包,用于分發(fā)和安裝Python庫(kù),這篇文章主要給大家介紹了關(guān)于Python安裝本地.whl文件的流程及注意事項(xiàng),文中講解了下載文件、安裝pip、使用pip安裝whl文件、驗(yàn)證安裝以及注意事項(xiàng),需要的朋友可以參考下
    2024-11-11
  • Python netmiko模塊的使用

    Python netmiko模塊的使用

    這篇文章主要介紹了Python netmiko模塊的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 如何計(jì)算 tensorflow 和 pytorch 模型的浮點(diǎn)運(yùn)算數(shù)

    如何計(jì)算 tensorflow 和 pytorch 模型的浮點(diǎn)運(yùn)算數(shù)

    FLOPs 是 floating point operations 的縮寫,指浮點(diǎn)運(yùn)算數(shù),可以用來(lái)衡量模型/算法的計(jì)算復(fù)雜度。本文主要討論如何在 tensorflow 1.x, tensorflow 2.x 以及 pytorch 中利用相關(guān)工具計(jì)算對(duì)應(yīng)模型的 FLOPs,需要的朋友可以參考下
    2022-11-11
  • Python爬蟲通過(guò)替換http request header來(lái)欺騙瀏覽器實(shí)現(xiàn)登錄功能

    Python爬蟲通過(guò)替換http request header來(lái)欺騙瀏覽器實(shí)現(xiàn)登錄功能

    這篇文章主要介紹了Python爬蟲通過(guò)替換http request header來(lái)欺騙瀏覽器實(shí)現(xiàn)登錄功能,需要的朋友可以參考下
    2018-01-01
  • python輸出第n個(gè)默尼森數(shù)的實(shí)現(xiàn)示例

    python輸出第n個(gè)默尼森數(shù)的實(shí)現(xiàn)示例

    這篇文章主要介紹了python輸出第n個(gè)默尼森數(shù)的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03

最新評(píng)論

个旧市| 九寨沟县| 南郑县| 曲周县| 南岸区| 武平县| 奉贤区| 周宁县| 故城县| 新津县| 绥化市| 平谷区| 台安县| 涿州市| 富锦市| 色达县| 普兰县| 池州市| 察哈| 县级市| 山阴县| 闸北区| 京山县| 吴川市| 微博| 庆元县| 永修县| 宜阳县| 芒康县| 永德县| 兰考县| 南乐县| 广水市| 太白县| 牙克石市| 蚌埠市| 阳信县| 马龙县| 大化| 乐清市| 平乡县|