Day10總結

匿名函數(shù)

普通函數(shù):

def 函數(shù)名(參數(shù)列表):
函數(shù)體

匿名函數(shù):

函數(shù)名 = lambda:參數(shù)列表:返回值
函數(shù)名:變量名
lambda:關鍵字
參數(shù)列表:參數(shù)名1,參數(shù)名2……
返回值:相當于一個只有return語句的函數(shù)體

匿名函數(shù)的調用也和普通函數(shù)一樣,函數(shù)名(實參列表),也支持位置參數(shù),關鍵字參數(shù),參數(shù)設定默認值,不定長參數(shù)
'''

寫一個匿名函數(shù),求兩個數(shù)的和

sum1 = lambda num1,num2:num1+num2

匿名函數(shù)的調用和普通函數(shù)一樣

print(sum1(10,20))

練習:求1+2+...+n

my_sum = lambda n:sum(range(n + 1))
print(my_sum(100))

變量的作用域

1、變量的作用域:變量聲明后,能夠使用的范圍
2、全局變量和局部變量:
全局變量:聲明在函數(shù)和類的外面的變量都是全局變量
作用域:從聲明開始到整個py文件結束,任何地方都可以使用

3、局部變量:聲明在函數(shù)和類中的變量
作用域:從聲明開始到函數(shù)或類結束

'''

'''
global關鍵字
在函數(shù)中說明一個變量是全局變量
注意:只能用在函數(shù)中使用
'''
name = 'aaa'

def func1():
global name#說明當前變量是全局變量
name = 'aaa'
print(name)

func1()

'''
nolocal關鍵字
在局部的局部變量中修改局部變量的值
'''

def fun2():
abc = 100
def fun3():
nonlocal abc
abc = 200
print('fun3',abc)
fun3()
print('fun2',abc)

函數(shù)作為變量

聲明函數(shù)就是聲明一個類型是function的變量,函數(shù)名是指就是變量名

'''
'''
1、變量可以給其他變量賦值

2、函數(shù)作為列表的元素

3、將函數(shù)作為參數(shù)

函數(shù)的調用

函數(shù)可以有多個返回值

求多個數(shù)的和與平均值

def my_sum(*nums):
sum1 = sum(nums)
average = sum1/len(nums)
return sum1,average #同時返回和、平均值

2、函數(shù)的調用過程是一個壓棧的過程
每次調用函數(shù)的時候,系統(tǒng)都會在內存中(棧)開辟空間來存儲函數(shù)執(zhí)行過程中產生的數(shù)據(jù)(函數(shù)聲明的變量)
當函數(shù)調用完成后,這塊內存會自動銷毀

遞歸函數(shù)

1、遞歸函數(shù):在函數(shù)體中調用函數(shù)本身

循環(huán)能做得遞歸都能做,但實際上能用循環(huán)解決的不用遞歸

2、怎么寫遞歸函數(shù)
a.確定臨界值(循環(huán)結束條件),讓函數(shù)結束
b.找關系,假設函數(shù)的功能已經實現(xiàn),找f(n)和f(n-1)的關系
c.根據(jù)關系,用f(n-1)實現(xiàn)f(n)的功能
'''

寫一個遞歸函數(shù),實現(xiàn)1+2+3+...+n

def my_sum(n):
#找臨界值
if n == 1:
return 1
# 找關系
# my_sum(n) = 1+2+3+...+n
# my_sum(n-1) = 1 + 2 + 3 + ... + n-1
# my_sum(n) = my_sum(n-1)+n
# 用f(n - 1)實現(xiàn)f(n)的功能
return my_sum(n-1)+n

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 一、快捷鍵 ctr+b 執(zhí)行ctr+/ 單行注釋ctr+c ...
    o_8319閱讀 6,027評論 2 16
  • 一、recode ---------# import randomfrom random import randi...
    大漠判官1閱讀 545評論 0 1
  • 8月31日每日三要事 1.準備星期六的東西 2.技能訓練ppx 3.技能訓練MS 8月30日每日三要事復盤 1.出...
    快樂番茄閱讀 104評論 0 0
  • 時光快些 承受不來不敢死去 漫長且孤寂了無音
    X一一I二閱讀 180評論 0 0
  • 曾幾何時,我想過要幸福地過我想過的生活,可卻又偏偏被外界的一切所影響而過得不那么幸福,諸如愛情,事業(yè),友情…… 對...
    碎夢虛空閱讀 501評論 8 23

友情鏈接更多精彩內容