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

Python函數(shù)值傳遞引用傳遞及形式參數(shù)和實際參數(shù)的區(qū)別

 更新時間:2022年05月20日 17:06:42   作者:Python熱愛者  
這篇文章主要介紹了Python函數(shù)值傳遞引用傳遞及形式參數(shù)和實際參數(shù)的區(qū)別,具有一定的參考價值,需要的小伙伴可以參考一下,希望對你的學習有所幫助

通常情況下,定義函數(shù)時都會選擇有參數(shù)的函數(shù)形式,函數(shù)參數(shù)的作用是傳遞數(shù)據(jù)給函數(shù),令其對接收的數(shù)據(jù)做具體的操作處理。

在使用函數(shù)時,經(jīng)常會用到形式參數(shù)(簡稱“形參”)和實際參數(shù)(簡稱“實參”),二者都叫參數(shù),之間的區(qū)別是:

  • 形式參數(shù):在定義函數(shù)時,函數(shù)名后面括號中的參數(shù)就是形式參數(shù),例如:
#定義函數(shù)時,這里的函數(shù)參數(shù) obj 就是形式參數(shù)
def demo(obj)
print(obj)
  • 實際參數(shù):在調(diào)用函數(shù)時,函數(shù)名后面括號中的參數(shù)稱為實際參數(shù),也就是函數(shù)的調(diào)用者給函數(shù)的參數(shù)。例如:
a = "python"
#調(diào)用已經(jīng)定義好的 demo 函數(shù),此時傳入的函數(shù)參數(shù) a 就是實際參數(shù)
demo(a)

實參和形參的區(qū)別,就如同劇本選主角,劇本中的角色相當于形參,而演角色的演員就相當于實參。

明白了什么是形參和實參后,再來想一個問題,那就是實參是如何傳遞給形參的呢?

Python 中,根據(jù)實際參數(shù)的類型不同,函數(shù)參數(shù)的傳遞方式可分為 2 種,分別為值傳遞和引用(地址)傳遞:

  • 值傳遞:適用于實參類型為不可變類型(字符串、數(shù)字、元組);
  • 引用(地址)傳遞:適用于實參類型為可變類型(列表,字典);

值傳遞和引用傳遞的區(qū)別是,函數(shù)參數(shù)進行值傳遞后,若形參的值發(fā)生改變,不會影響實參的值;而函數(shù)參數(shù)繼續(xù)引用傳遞后,改變形參的值,實參的值也會一同改變。

例如,定義一個名為 demo 的函數(shù),分別為傳入一個字符串類型的變量(代表值傳遞)和列表類型的變量(代表引用傳遞):

def demo(obj) :
obj += obj
print("形參值為:",obj)
print("-------值傳遞-----")
a = "python"
print("a的值為:",a)
demo(a)
print("實參值為:",a)
print("-----引用傳遞-----")
a = [1,2,3]
print("a的值為:",a)
demo(a)
print("實參值為:",a)

運行結(jié)果為:

-------值傳遞-----
a的值為: python
形參值為: pythonpython
實參值為: python
-----引用傳遞-----
a的值為: [1, 2, 3]
形參值為: [1, 2, 3, 1, 2, 3]
實參值為: [1, 2, 3, 1, 2, 3]

分析運行結(jié)果不難看出,在執(zhí)行值傳遞時,改變形式參數(shù)的值,實際參數(shù)并不會發(fā)生改變;而在進行引用傳遞時,改變形式參數(shù)的值,實際參數(shù)也會發(fā)生同樣的改變。

到此這篇關(guān)于Python函數(shù)值傳遞引用傳遞及形式參數(shù)和實際參數(shù)的區(qū)別的文章就介紹到這了,更多相關(guān)Python函數(shù)值傳遞內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Effective Python bytes 與 str 的區(qū)別

    Effective Python bytes 與 str 的區(qū)別

    這篇文章主要介紹了Effective Python bytes 與 str 的區(qū)別,Python 有兩種類型可以表示字符序列,下面圍繞Python bytes 與 str 的相關(guān)資料展開內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • python list轉(zhuǎn)矩陣的實例講解

    python list轉(zhuǎn)矩陣的實例講解

    今天小編就為大家分享一篇python list轉(zhuǎn)矩陣的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • python入門課程第三講之編碼規(guī)范知多少

    python入門課程第三講之編碼規(guī)范知多少

    這篇文章主要介紹了python入門課程第三講之編碼規(guī)范知多少,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • 關(guān)于使用pyqt彈出消息提示框的問題

    關(guān)于使用pyqt彈出消息提示框的問題

    PyQt是一個創(chuàng)建GUI應用程序的工具包。它是Python編程語言和Qt庫的成功融合。Qt庫是最強大的庫之一。PyQt是由Phil?Thompson?開發(fā)。接下來通過本文給大家介紹下使用pyqt彈出消息提示框的問題,需要的朋友可以參考下
    2022-01-01
  • python實現(xiàn)對圖片進行旋轉(zhuǎn),放縮,裁剪的功能

    python實現(xiàn)對圖片進行旋轉(zhuǎn),放縮,裁剪的功能

    今天小編就為大家分享一篇python實現(xiàn)對圖片進行旋轉(zhuǎn),放縮,裁剪的功能,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python 線程池模塊之多線程操作代碼

    Python 線程池模塊之多線程操作代碼

    最近在做一個爬蟲相關(guān)的項目,單線程的整站爬蟲,耗時真的不是一般的巨大,運行一次也是心累,所以,要想實現(xiàn)整站爬蟲,多線程是不可避免的,那么python多線程又應該怎樣實現(xiàn)呢?今天小編給大家分享下實現(xiàn)代碼,感興趣的朋友一起看看吧
    2021-05-05
  • Python入門教程(二十三)Python的繼承

    Python入門教程(二十三)Python的繼承

    這篇文章主要介紹了Python入門教程(二十三)Python的繼承,Python是一門非常強大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下
    2023-04-04
  • 舉例講解Python中的算數(shù)運算符的用法

    舉例講解Python中的算數(shù)運算符的用法

    這篇文章主要介紹了舉例講解Python中的算數(shù)運算符的用法,是Python學習當中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • Python的speech_recognition庫如何將聲音轉(zhuǎn)為文字

    Python的speech_recognition庫如何將聲音轉(zhuǎn)為文字

    這篇文章主要介紹了通過Python的speech_recognition庫將聲音轉(zhuǎn)為文字,將聲音轉(zhuǎn)為文字,除了speech_recognition庫,還要依賴pyaudio庫,而且mac用戶需要安裝PortAudio,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2023-05-05
  • 在Python中使用元類的教程

    在Python中使用元類的教程

    這篇文章主要介紹了在Python中使用元類的教程,是Python當中的基礎(chǔ)知識,代碼基于Python2.x版本,需要的朋友可以參考下
    2015-04-04

最新評論

措美县| 平罗县| 邵武市| 神木县| 会同县| 黑河市| 团风县| 徐汇区| 苏尼特右旗| 沁阳市| 石门县| 寻甸| 和政县| 普定县| 无极县| 镇原县| 广丰县| 祁阳县| 邢台市| 湄潭县| 南通市| 即墨市| 阿勒泰市| 平远县| 满城县| 桑日县| 襄垣县| 城口县| 乌海市| 潜山县| 乌拉特后旗| 上思县| 泸定县| 巴东县| 沛县| 新余市| 裕民县| 望谟县| 炉霍县| 康定县| 门源|