国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù)

這篇具有很好參考價值的文章主要介紹了【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

?【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

???♂? 個人主頁:@艾派森的個人主頁

???作者簡介:Python學習者
?? 希望大家多多支持,我們一起進步!??
如果文章對你有幫助的話,
歡迎評論 ??點贊???? 收藏 ??加關(guān)注+


【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

Python3 函數(shù)

函數(shù)是組織好的,可重復(fù)使用的,用來實現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。 ?

函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。前面我們用過了很多python內(nèi)置函數(shù),比如print(),input()等。但你也可以自己創(chuàng)建函數(shù),這被叫做用戶自定義函數(shù)。 ?

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

Python函數(shù)的分類

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

Python函數(shù)分為如下幾類:

1. 內(nèi)置函數(shù)

我們前面使用的 str() 、 list() 、 len() 等這些都是內(nèi)置函數(shù),可以拿來直接使用

2. 標準庫函數(shù)

我們可以通過 import 語句導(dǎo)入庫,然后使用其中定義的函數(shù)

3. 第三方庫函數(shù)

Python社區(qū)也提供了很多高質(zhì)量的庫,下載安裝這些庫后,也是通過 import 語句導(dǎo)入,然后可以使用這些第三方庫的函數(shù)

4. 用戶自定義函數(shù)

用戶自己定義的函數(shù),顯然也是開發(fā)中適應(yīng)用戶自身需求定義的函數(shù)。

定義一個函數(shù)

你可以定義一個由自己想要功能的函數(shù),以下是簡單的規(guī)則: ?

  • - 函數(shù)代碼塊以 def 關(guān)鍵詞開頭,后接函數(shù)標識符名稱和圓括號 ()。
  • - 任何傳入?yún)?shù)和自變量必須放在圓括號中間,圓括號之間可以用于定義參數(shù)。
  • - 函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明。
  • - 函數(shù)內(nèi)容以冒號 : 起始,并且縮進。
  • - return [表達式] 結(jié)束函數(shù),選擇性地返回一個值給調(diào)用方,不帶表達式的 return 相當于返回 None。

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

"""
Python 定義函數(shù)使用 def 關(guān)鍵字,一般格式如下:
def  函數(shù)名 ([參數(shù)列表]) :
    '''文檔字符串'''
    函數(shù)體/若干語句
"""
def say_hello():
    print('Hello world!')
    
say_hello()

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

# 帶參數(shù)的函數(shù)
def add(a,b,c):
    '''完成三個數(shù)的加法,并返回他們的和'''
    sum = a+b+c
    print(f"{a}、、{c}三個數(shù)的和是:{sum}")
    return sum
result = add(10,20,30)
print(result)

?【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

參數(shù)

以下是調(diào)用函數(shù)時可使用的正式參數(shù)類型: ?

  • - 位置參數(shù)
  • - 關(guān)鍵字參數(shù)
  • - 默認參數(shù)
'''
位置參數(shù)
位置參數(shù)須以正確的順序傳入函數(shù)。調(diào)用時的數(shù)量必須和聲明時的一樣。
'''
def self_introduction(name,age):  # name和age叫做形參
    print(f'我叫{name},今年{age}歲了!')

self_introduction('艾派森',10)  # '艾派森'和'10'叫做實參

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

'''
關(guān)鍵字參數(shù)
關(guān)鍵字參數(shù)和函數(shù)調(diào)用關(guān)系緊密,函數(shù)調(diào)用使用關(guān)鍵字參數(shù)來確定傳入的參數(shù)值。
使用關(guān)鍵字參數(shù)允許函數(shù)調(diào)用時參數(shù)的順序與聲明時不一致,因為 Python 解釋器能夠用參數(shù)名匹配參數(shù)值。
'''
def self_introduction(name,age):
    print(f'我叫{name},今年{age}歲了!')

self_introduction(name='艾派森',age=18)
self_introduction(age=20,name='艾派森')

?【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

'''
默認參數(shù)
調(diào)用函數(shù)時,如果沒有傳遞參數(shù),則會使用默認參數(shù)。
'''
def self_introduction(name,age,school='家里蹲大學'):
    print(f'我叫{name},今年{age}歲了,在{school}上學!')

self_introduction(name='艾派森',age=18)
self_introduction(name='艾派森',age=18,school='哈佛大學')

?【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

# 默認參數(shù)必須放在最后面,否則會報錯
def self_introduction(school='家里蹲大學',name,age,):
    print(f'我叫{name},今年{age}歲了,在{school}上學!')

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

匿名函數(shù)??

Python 使用 lambda 來創(chuàng)建匿名函數(shù)。 ?

所謂匿名,意即不再使用 def 語句這樣標準的形式定義一個函數(shù)。 ?

  • - lambda 只是一個表達式,函數(shù)體比 def 簡單很多。
  • - lambda 的主體是一個表達式,而不是一個代碼塊。僅僅能在 lambda 表達式中封裝有限的邏輯進去。
  • - lambda 函數(shù)擁有自己的命名空間,且不能訪問自己參數(shù)列表之外或全局命名空間里的參數(shù)。
'''
lambda 函數(shù)的語法只包含一個語句,語法如下:
lambda [arg1 [,arg2,.....argn]]:expression
'''
f = lambda x:x*x
print(f(5))

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

# 匿名函數(shù)傳入多個參數(shù),也可以使用關(guān)鍵詞傳參
f = lambda x1,x2:x1+x2
print(f(10,20)) 
print(f(x1=10,x2=20))

?【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

eval()函數(shù)

功能:將字符串 str 當成有效的表達式來求值并返回計算結(jié)果。 ?

注:eval函數(shù) 會將字符串當做語句來執(zhí)行,因此會被注入安全隱患。 ?

比如:字符串中含有刪除文件的語句,那就麻煩大了。因此,使用時候,要慎重?。。?/strong>

?【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

變量的作用域(全局變量和局部變量)?

變量起作用的范圍稱為變量的作用域,不同作用域內(nèi)同名變量之間互不影響。

變量分為:全局變量、局部變量。 ?

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

全局變量:

1. 在函數(shù)和類定義之外聲明的變量。作用域為定義的模塊,從定義位置開始直到模塊結(jié)束。

2. 全局變量降低了函數(shù)的通用性和可讀性。應(yīng)盡量避免全局變量的使用。

3. 要在函數(shù)內(nèi)改變?nèi)肿兞康闹担褂?global 聲明一下

局部變量:

1. 在函數(shù)體中(包含形式參數(shù))聲明的變量。

2. 局部變量的引用比全局變量快,優(yōu)先考慮使用

3. 如果局部變量和全局變量同名,則在函數(shù)內(nèi)隱藏全局變量,只使用同名的局部變量

# 【操作】全局變量的作用域測試
n = 50         # 全局變量
def f():
    global n    # 如果要在函數(shù)內(nèi)改變?nèi)肿兞康闹?,增加global關(guān)鍵字聲明
    print(n)    # 打印全局變量n的值    
    n = 100      
    
f()
print(n)  # n已經(jīng)由50經(jīng)過函數(shù)f轉(zhuǎn)變?yōu)?00

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

# 【操作】全局變量和局部變量同名測試
a = 50
def f():
    a = 10      # 同名的局部變量
    print(a)
    
f()    
print(a)    # a仍然是50,沒有變化

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

遞歸函數(shù)

1.遞歸(recursion)是一種常見的算法思路,在很多算法中都會用到 ?

2.遞歸的基本思想就是“自己調(diào)用自己” ?

遞歸函數(shù)指的是:自己調(diào)用自己的函數(shù),在函數(shù)體內(nèi)部直接或間接的自己調(diào)用自己。 ?

每個遞歸函數(shù)必須包含兩個部分: ?

  • - 終止條件:表示遞歸什么時候結(jié)束。一般用于返回值,不再調(diào)用自己。
  • - 遞歸步驟:把第n步的值和第n-1步相關(guān)聯(lián)。

注:遞歸函數(shù)由于會創(chuàng)建大量的函數(shù)對象、過量的消耗內(nèi)存和運算能力。在處理大量數(shù)據(jù)時,謹慎使用。

# 計算階乘:根據(jù)用戶輸入的整數(shù)n,計算并輸出n的階乘值。
def fact(n): #計算階乘
    if n == 0:
        return 1
    else:
        return n * fact(n-1)
 
num = eval(input("請輸入一個正整數(shù): "))
print(fact(num))

?【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

'''
斐波那契數(shù)列(1、1、2、3、5、8、13、21、34、……)
兔子繁殖問題:
在700多年前,意大利著名數(shù)學家斐波那契在《算盤全集》中提到這樣一個問題:一對兔子,從出生后第3個月起每個月都生一對兔子。小兔子長到第3個月后每個月又生一對兔子。假如兔子都不死,請問第1個月出生的一對兔子,第n個月有多少對兔子?
F(1)=1
F(2)=1
F(3)=F(1)+F(2)=1+1=2
F(4)=F(2)+F(3)
…………
F(N)=F(N-2)+F(N-1)
'''
def fab(n):
    if n <= 2:
        return 1
    else:
        return fab(n-1)+fab(n-2)
 
n = eval(input("請輸入一個正整數(shù): "))
print(fab(n))

文末推薦

《TensorFlow全棧開發(fā)工程實踐》

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

內(nèi)容簡介:

????????本書共分為 8 章,主要內(nèi)容包括與人工智能相關(guān)的數(shù)學知識,Python 語言所特有的語法和技巧,Docker 模型透明無縫地發(fā)布的實現(xiàn),業(yè)界優(yōu)秀的 Git 代碼版本管理工具,模型開發(fā)環(huán)境的配置,高級人工智能開發(fā)工程師常用的 IDE 開發(fā)工具,經(jīng)典神經(jīng)網(wǎng)絡(luò)模型的剖析和分解,RPC 遠程調(diào)用的實現(xiàn),訓(xùn)練樣本的序化組織結(jié)構(gòu)TFRecord,模型的訓(xùn)練、保存和封裝發(fā)布,模型訓(xùn)練的 GPU 配置和機制策略的部署,模型從訓(xùn)練到發(fā)布的完整示例等。?

編輯推薦:

????????本書適合有計算機專業(yè)和數(shù)學專業(yè)背景的初、中級開發(fā)者閱讀,以便快速掌握和駕馭人工智能全棧技術(shù),也適合作為在職人工智能模型開發(fā)人員查詢時使用的手冊級工具用書,還適合作為中職學校、高等院校及培訓(xùn)機構(gòu)計算機人工智能和大數(shù)據(jù)等相關(guān)專業(yè)的教學用書。

文末福利

《TensorFlow全棧開發(fā)工程實踐》免費包郵送出3本!

  • 抽獎方式:評論區(qū)隨機抽取3位小伙伴免費送出!
  • 參與方式:關(guān)注博主、點贊、收藏、評論區(qū)評論“人生苦短,拒絕內(nèi)卷!”(切記要點贊+收藏,否則抽獎無效,每個人最多評論三次!
  • 活動截止時間:2023-07-31?20:00:00
  • ?當當購買鏈接:《TensorFlow全棧開發(fā)工程實踐——做一個全智全能算法工程師》(王艷銘)【簡介_書評_在線閱讀】 - 當當圖書

?名單公布時間:2023-07-31?21:00:00??

【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù),零基礎(chǔ)學習Pyhton數(shù)據(jù)分析,python,開發(fā)語言

本文章隸屬于專欄【零基礎(chǔ)學習Python數(shù)據(jù)分析】,本專欄會持續(xù)更新,永久免費,喜歡的小伙伴速速訂閱!

歡迎點贊????+ 評論 ??+收藏 ??,同時也歡迎你加入我的粉絲交流群一起學習探討!

?文章來源地址http://www.zghlxwxcb.cn/news/detail-620634.html

到了這里,關(guān)于【Python基礎(chǔ)】- 自定義函數(shù)和匿名函數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Pyhton基礎(chǔ)知識:整理18 -> 基于面向?qū)ο蟮闹R完成數(shù)據(jù)分析的案例開發(fā)

    Pyhton基礎(chǔ)知識:整理18 -> 基于面向?qū)ο蟮闹R完成數(shù)據(jù)分析的案例開發(fā)

    數(shù)據(jù)準備:兩份數(shù)據(jù),一份是是字符串的形式,一份是json格式,之后對數(shù)據(jù)處理后,需要合并為一份的數(shù)據(jù),進而進行圖表的開發(fā) ? ? ?

    2024年01月17日
    瀏覽(24)
  • Python零基礎(chǔ)學習7.1—Python自定義函數(shù)的定義和調(diào)用

    函數(shù)是組織好的,可重復(fù)使用的,用來實現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。 函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。Python提供了許多內(nèi)建函數(shù),比如print()。但我們也可以自己創(chuàng)建函數(shù)來實現(xiàn)一些功能,這被叫做用戶自定義函數(shù)。 下面來看幾個例題: 任務(wù)描述 本關(guān)

    2024年02月04日
    瀏覽(22)
  • Python零基礎(chǔ)學習7.2—Python自定義函數(shù)的綜合應(yīng)用

    本章我們加大一點難度,來讓大家更好的掌握Python函數(shù)的使用技巧 來看例題: 任務(wù)描述 本關(guān)任務(wù):素數(shù)問題函數(shù)。 (1)實現(xiàn)isPrime()函數(shù),參數(shù)為整數(shù)。如果是素數(shù),返回True,否則返回False。 (2)在(1)的基礎(chǔ)上,編寫一個函數(shù)listPrime(),該函數(shù)可以接受任意個數(shù)數(shù)據(jù),返

    2024年02月03日
    瀏覽(25)
  • python基礎(chǔ)----05-----函數(shù)的多返回值、函數(shù)的多種參數(shù)使用形式、函數(shù)作為參數(shù)傳遞、lambda匿名函數(shù)

    python基礎(chǔ)----05-----函數(shù)的多返回值、函數(shù)的多種參數(shù)使用形式、函數(shù)作為參數(shù)傳遞、lambda匿名函數(shù)

    分為以下四種。 位置參數(shù)調(diào)用函數(shù)時根據(jù)函數(shù)定義的參數(shù)位置來傳遞參數(shù),傳遞的參數(shù)和定義的參數(shù)的順序及個數(shù)必須一致。 函數(shù)調(diào)用時通過“鍵=值”形式傳遞參數(shù)。 作用:可以讓函數(shù)更加清晰、容易使用,同時也清楚了參數(shù)的順序需求。 注意: 函數(shù)調(diào)用時,如果有位置參

    2024年02月08日
    瀏覽(23)
  • 【100天精通Python】Day59:Python 數(shù)據(jù)分析_Pandas高級功能-多層索引創(chuàng)建訪問切片和重塑操作,pandas自定義函數(shù)和映射功能

    目錄 1 多層索引(MultiIndex) 1.1 創(chuàng)建多層索引 1.1.1 從元組創(chuàng)建多層索引

    2024年02月09日
    瀏覽(29)
  • Python函數(shù)——函數(shù)的基礎(chǔ)定義語法

    在Python編程中,函數(shù)是構(gòu)建高效代碼的關(guān)鍵。通過創(chuàng)建可重用的代碼塊,我們可以使程序更加清晰、易讀且易于維護。在本文中,我們將深入了解Python函數(shù)的基本概念、特性以及如何在編程實踐中靈活運用它們。 1、函數(shù)的定義: 函數(shù)是一段具有特定功能的代碼塊,它可以接

    2024年02月20日
    瀏覽(21)
  • python 匿名函數(shù)(lambda函數(shù))

    Python中的匿名函數(shù)是指沒有命名標識符的函數(shù),通常被稱為lambda函數(shù)。與普通函數(shù)不同,它們是一種更加簡潔的方式來編寫小型臨時函數(shù)。在Python中,匿名函數(shù)使用 lambda 來定義,其語法如下: 其中, arguments 表示函數(shù)參數(shù),可以是一個或多個,多個參數(shù)之間用逗號分隔

    2024年02月02日
    瀏覽(21)
  • JavaScript經(jīng)典教程(七)-- JavaScript基礎(chǔ) -- 函數(shù)、argument、匿名函數(shù)、函數(shù)深入、選項卡

    JavaScript經(jīng)典教程(七)-- JavaScript基礎(chǔ) -- 函數(shù)、argument、匿名函數(shù)、函數(shù)深入、選項卡

    1、函數(shù) (1)特性 1、每個函數(shù)都有自己的作用域。 2、如果執(zhí)行該變量名,會返回自己,即返回函數(shù)本身。 3、正常調(diào)用,返回函數(shù)中的執(zhí)行結(jié)果。 當函數(shù)中無執(zhí)行內(nèi)容時,返回默認return=undefind;(每個函數(shù)都有默認return=undefined) 當函數(shù)中有執(zhí)行內(nèi)容時,返回返回值。 4、re

    2024年02月02日
    瀏覽(31)
  • python匿名函數(shù)Lambda

    Lambda函數(shù)也被稱為匿名(沒有名稱)函數(shù),它直接接受參數(shù)的數(shù)量以及使用該參數(shù)執(zhí)行的條件或操作,該參數(shù)以冒號分隔,并返回最終結(jié)果。為了在大型代碼庫上編寫代碼時執(zhí)行一項小任務(wù),或者在函數(shù)中執(zhí)行一項小任務(wù),便在正常過程中使用lambda函數(shù)。 argument_list是參數(shù)列表,

    2024年02月16日
    瀏覽(25)
  • Python基礎(chǔ)List列表定義與函數(shù)

    如何定義一個非空的列表? 列表的特點: 1.列表是有序的 2.可以存放多個元素 3.每個元素可以是任何數(shù)據(jù)類型 定義一個空列表 訪問列表中的元素 通過索引值來訪問列表中的元素,索引從0開始 獲取列表中的長度,內(nèi)置函數(shù)len() 修改列表中的元素 列表切片,步長 說明:列表

    2024年02月09日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包