91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中函數局部變量、全局變量、遞歸知識點的示例分析

發布時間:2021-09-03 10:30:21 來源:億速云 閱讀:163 作者:小新 欄目:開發技術

小編給大家分享一下python中函數局部變量、全局變量、遞歸知識點的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

函數局部變量 全局變量 及其作用域

#簡單類型(int str等)變量的局部變量與全局變量及其作用域的關系
name = "xxx" #第一級頂頭定義的變量都稱為全局變量,其作用域從變量定義的位置開始到此程序結束
def Print_Name():
  print("name before change:", name)
#由于name在此函數之前已經被定義為全局變量,此處函數讀取變量name是讀取的全局變量name “xxx”,函數內部就不能再定義其同名局部變量,否則無法區分變量為局部變量還是全局變量
#  name = "yyy" #此語句放開以后會報錯:IndentationError: unindent does not match any outer indentation level
Print_Name()

def Change_Name():
  name = "yyy" #函數內部首先定義全局變量的同名局部變量,則整個函數內部操作的為局部變量(一個與全局變量同名的臨時變量)
  print("name after change is", name)

Change_Name() # yyy實際輸出的是局部變量的值
print("global name is", name) # xxx此處訪問的是全局變量,因為此print語句不是在Change_Name內部。

#函數內部需要強制對全局變量進行修改,使用global關鍵字
def Change_global_Name():
  global name
  print("name before change is :", name)
  name = "yyy"
Change_global_Name() # xxx 修改前的全局變量
print("global name is :", name) # yyy此處由于函數內強制聲明name為global變量,整個函數內部可以對global進行操作

#復雜數據類型列表 集合 字典等復雜數據結構如果函數外部定義了函數里面是可以不用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'] 對于復雜的數據類型,函數內直接操作全局變量,不會再生成局部變量

遞歸

#函數內部可以調用其它函數,如果函數在內部調用自己就被稱為遞歸函數
def Half_fun(n):
  print(n)
  if n < 2:
    return n
  Half_fun(n/2)
Half_fun(100)
#遞歸特性:1、必須有一個明確的結束條件 2、每次遞歸調用問題復雜度需要相比上次簡化 3、遞歸會占用大量內存

以上是“python中函數局部變量、全局變量、遞歸知識點的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

米泉市| 崇仁县| 武宣县| 密云县| 大连市| 开江县| 泰宁县| 科尔| 凭祥市| 桐城市| 清水县| 洛宁县| 武定县| 新宾| 鄂托克旗| 鱼台县| 新巴尔虎左旗| 武清区| 印江| 娱乐| 且末县| 呼和浩特市| 庆元县| 孟州市| 西平县| 鄂州市| 侯马市| 嘉义市| 噶尔县| 景德镇市| 阿拉善右旗| 盐山县| 临夏县| 渝中区| 兴义市| 长丰县| 合水县| 滕州市| 富川| 古田县| 大化|