亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

淺談Python中的函數(shù)傳遞問題

 更新時(shí)間:2021年11月18日 09:24:59   作者:雷學(xué)委  
這篇文章主要為大家介紹了Python函數(shù)傳遞問題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

函數(shù)參數(shù)如何傳遞

key-value方式傳遞參數(shù):

下面是非常常見的傳遞方式,參數(shù)名寫直白,寫死了:

def show_info(name, title):
    print("姓名為:",name)
    print("職稱為:",title)

我們?cè)谑褂玫臅r(shí)候可以用以下的方式:

show_info('雷學(xué)委', '大學(xué)生Python學(xué)習(xí)社區(qū)長(zhǎng)')
show_info(name='雷學(xué)委', title='持續(xù)學(xué)習(xí)協(xié)會(huì)會(huì)長(zhǎng)')

可以寫成這樣,使用兩個(gè)*,這樣非常靈活,但是缺點(diǎn)也是明顯的(結(jié)構(gòu)靈活有時(shí)候需要判斷是否漏傳,直接取容易出錯(cuò))

def show_info_v2(**kv_dict):
    print("姓名為:", kv_dict['name'])
    print("職稱為:", kv_dict['title'])
show_info_v2(name='雷學(xué)委', title='大學(xué)生Python學(xué)習(xí)社區(qū)長(zhǎng)')

下面是效果,看起來一樣的。

在這里插入圖片描述

動(dòng)態(tài)長(zhǎng)度參數(shù)傳遞

通常使用*加參數(shù)名。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/24 11:39 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : func_call.py
# @Project : hello
def show_info(name, title):
    print("姓名為:", name)
    print("職稱為:", title)
show_info('雷學(xué)委', '大學(xué)生Python學(xué)習(xí)社區(qū)區(qū)長(zhǎng)')
show_info(name='雷學(xué)委', title='持續(xù)學(xué)習(xí)協(xié)會(huì)會(huì)長(zhǎng)')
def show_info_v2(name, title, *info):
    print("姓名為:", name)
    print("職稱為:", title)
    print("其他評(píng)價(jià):", info)
show_info_v2('雷學(xué)委', '大學(xué)生Python學(xué)習(xí)社區(qū)區(qū)長(zhǎng)', "熱愛技術(shù)", "熱愛生活")

運(yùn)行效果如下:

在這里插入圖片描述

參數(shù)是否會(huì)被函數(shù)攥改?

我們看看下面的程序即可:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/24 11:39 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : func_call.py
# @Project : hello
def compute_v1(list):
    sum = 0
    for x in list:
        sum += x
    list = list + [sum]
    print("新地址:", id(list))
    return sum
def compute_v2(list):
    sum = 0
    for x in list:
        sum += x
    list[0] = list[0] * 100
    return sum
_list = [1, 2, 3, 4, 5]
print("調(diào)用計(jì)算函數(shù)v1之前:", _list)
print("調(diào)用計(jì)算函數(shù)v1之前內(nèi)存地址:", id(_list))
print(compute_v1(_list))
print("調(diào)用計(jì)算函數(shù)v1之后:", _list)
print("調(diào)用計(jì)算函數(shù)v1之后內(nèi)存地址:", id(_list))
_list = [1, 2, 3, 4, 5]
print("調(diào)用計(jì)算函數(shù)v2之前:", _list)
print("調(diào)用計(jì)算函數(shù)v2之前內(nèi)存地址:", id(_list))
print(compute_v2(_list))
print("調(diào)用計(jì)算函數(shù)v2之后:", _list)
print("調(diào)用計(jì)算函數(shù)v2之后內(nèi)存地址:", id(_list))

這里兩個(gè)compute函數(shù),一個(gè)修改參數(shù)引用地址,一個(gè)并沒有修改參數(shù)引用而是修改了引用內(nèi)存空間的關(guān)聯(lián)地址(一個(gè)變量)的值。

可以說它們都成功了。但是外面的_list 的地址是任何時(shí)候都不會(huì)被修改的,除非賦值新地址(也就是在調(diào)用v2之前重新復(fù)制那次)

下面是運(yùn)行結(jié)果:

屏幕快照 2021-10-31 下午10.34.46.png

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Python正則獲取、過濾或者替換HTML標(biāo)簽的方法

    Python正則獲取、過濾或者替換HTML標(biāo)簽的方法

    這篇文章主要介紹了Python通過正則表達(dá)式獲取、過濾或者替換HTML標(biāo)簽的方法,感興趣的小伙伴們可以參考一下
    2016-01-01
  • Python?Pandas中append方法舉例詳解

    Python?Pandas中append方法舉例詳解

    這篇文章主要給大家介紹了關(guān)于Python?Pandas中append方法的相關(guān)資料,在Pandas中append()方法用于將一個(gè)或多個(gè)DataFrame或Series添加到DataFrame中,需要的朋友可以參考下
    2023-12-12
  • 快速入手Python字符編碼

    快速入手Python字符編碼

    本文不談復(fù)雜的理論,就經(jīng)驗(yàn)教大家字符處理八字真言:確定編碼,同類交互。教大家快速戰(zhàn)勝Python字符編碼。
    2016-08-08
  • Python數(shù)據(jù)結(jié)構(gòu)與算法之鏈表,無序鏈表詳解

    Python數(shù)據(jù)結(jié)構(gòu)與算法之鏈表,無序鏈表詳解

    這篇文章主要為大家詳細(xì)介紹了Python數(shù)據(jù)結(jié)構(gòu)與算法之鏈表,使用數(shù)據(jù)庫(kù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Python使用tkinter寫一個(gè)本地密碼管理器

    Python使用tkinter寫一個(gè)本地密碼管理器

    閑來無事,看到自己有很多網(wǎng)站的賬戶密碼,有些網(wǎng)站可能打開一兩次也就忘記了,下一次在輸入賬戶密碼就想不起來,這樣很容易丟失賬號(hào)。所以本文就來用Python和tkinter寫一個(gè)本地密碼管理器吧
    2023-05-05
  • Python海龜繪圖詳解

    Python海龜繪圖詳解

    python2.6版本中后引入的一個(gè)簡(jiǎn)單的繪圖工具,叫做海龜繪圖(Turtle Graphics),出現(xiàn)在1966年的Logo計(jì)算機(jī)語言。海龜繪圖(turtle庫(kù))是python的內(nèi)部模塊,使用前導(dǎo)入即可。本文就帶大家深入了解一下海龜繪圖,快來跟隨小編一起學(xué)習(xí)吧
    2021-12-12
  • python操作ini類型配置文件的實(shí)例教程

    python操作ini類型配置文件的實(shí)例教程

    這篇文章主要給大家介紹了關(guān)于python操作ini類型配置文件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • python?判斷字符串當(dāng)中是否包含字符(str.contain)

    python?判斷字符串當(dāng)中是否包含字符(str.contain)

    這篇文章主要介紹了python?判斷字符串當(dāng)中是否包含字符(str.contain),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • Python利用yarl實(shí)現(xiàn)輕松操作url

    Python利用yarl實(shí)現(xiàn)輕松操作url

    在諸如網(wǎng)絡(luò)爬蟲、web應(yīng)用開發(fā)等場(chǎng)景中,我們需要利用Python完成大量的url解析、生成等操作。本文為大家介紹了Pythonyarl操作url的方法,需要的可以了解一下
    2022-10-10
  • 簡(jiǎn)單且有用的Python數(shù)據(jù)分析和機(jī)器學(xué)習(xí)代碼

    簡(jiǎn)單且有用的Python數(shù)據(jù)分析和機(jī)器學(xué)習(xí)代碼

    Python編程是一種通用的編程語言,開源、靈活、功能強(qiáng)大且易于使用,python最重要的特性之一是其用于數(shù)據(jù)處理和分析任務(wù)的豐富實(shí)用程序和庫(kù)集,這篇文章主要給大家介紹了一些簡(jiǎn)單且有用的Python數(shù)據(jù)分析和機(jī)器學(xué)習(xí)代碼,需要的朋友可以參考下
    2021-07-07

最新評(píng)論