日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python 函数递归一次增加一次变量_python函数局部变量、全局变量、递归知识点总结...

發(fā)布時間:2023/12/2 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 函数递归一次增加一次变量_python函数局部变量、全局变量、递归知识点总结... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

函數(shù)局部變量 全局變量 及其作用域 #簡單類型(int str等)變量的局部變量與全局變量及其作用域的關(guān)系

name = "xxx" #第一級頂頭定義的變量都稱為全局變量,其作用域從變量定義的位置開始到此程序結(jié)束

def Print_Name():

print("name before change:", name)

#由于name在此函數(shù)之前已經(jīng)被定義為全局變量,此處函數(shù)讀取變量name是讀取的全局變量name “xxx”,函數(shù)內(nèi)部就不能再定義其同名局部變量,否則無法區(qū)分變量為局部變量還是全局變量

# name = "yyy" #此語句放開以后會報錯:IndentationError: unindent does not match any outer indentation level

Print_Name()

def Change_Name():

name = "yyy" #函數(shù)內(nèi)部首先定義全局變量的同名局部變量,則整個函數(shù)內(nèi)部操作的為局部變量(一個與全局變量同名的臨時變量)

print("name after change is", name)

Change_Name() # yyy實(shí)際輸出的是局部變量的值

print("global name is", name) # xxx此處訪問的是全局變量,因為此print語句不是在Change_Name內(nèi)部。

#函數(shù)內(nèi)部需要強(qiáng)制對全局變量進(jìn)行修改,使用global關(guān)鍵字

def Change_global_Name():

global name

print("name before change is :", name)

name = "yyy"

Change_global_Name() # xxx 修改前的全局變量

print("global name is :", name) # yyy此處由于函數(shù)內(nèi)強(qiáng)制聲明name為global變量,整個函數(shù)內(nèi)部可以對global進(jìn)行操作

#復(fù)雜數(shù)據(jù)類型列表 集合 字典等復(fù)雜數(shù)據(jù)結(jié)構(gòu)如果函數(shù)外部定義了函數(shù)里面是可以不用global聲明也操作的是全局變量,沒有局部變量一說了

names = ['111', '222', '333']

def Change_Names():

names[0] = "444"

print("in function names :", names)

Change_Names() #in function names : ['444', '222', '333']

print("global names :", names) #in function names : ['444', '222', '333'] 對于復(fù)雜的數(shù)據(jù)類型,函數(shù)內(nèi)直接操作全局變量,不會再生成局部變量

遞歸 #函數(shù)內(nèi)部可以調(diào)用其它函數(shù),如果函數(shù)在內(nèi)部調(diào)用自己就被稱為遞歸函數(shù)

def Half_fun(n):

print(n)

if n < 2:

return n

Half_fun(n/2)

Half_fun(100)

#遞歸特性:1、必須有一個明確的結(jié)束條件 2、每次遞歸調(diào)用問題復(fù)雜度需要相比上次簡化 3、遞歸會占用大量內(nèi)存

以上實(shí)例很簡單,大家可以本次測試下,感謝你的閱讀和對聚米學(xué)院的支持。

總結(jié)

以上是生活随笔為你收集整理的python 函数递归一次增加一次变量_python函数局部变量、全局变量、递归知识点总结...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。