Python中都全局变量和局部变量
生活随笔
收集整理的這篇文章主要介紹了
Python中都全局变量和局部变量
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
定義
全局變量:函數體之外定義的變量
局部變量:函數體之內定義的變量
下述代碼中,t是全局變量,m是局部變量
t = 1 def func(x):m = 2return x//m規則
1. 局部變量和全局變量是不同的變量,即使變量名相同
- 局部變量是函數中的占位符,與全局變量可能重名,但不是同一個變量
- 函數運行結束后,局部變量被釋放
- 可以使用global保留字在函數中使用全局變量
看下面兩個例子:
例1: 全局變量s=100,局部變量s=3628800,函數調用完畢后,打印s,則打印的結果是全局變量s,局部變量s已經釋放了
例2: 全局變量s初始值100,經過函數處理后為s=362880000,函數調用完畢后,打印s,則打印的結果是經過函數處理后的值,函數作用于對全局變量上了
?
?2. 局部變量為組合類型數據且在函數內部未創建而直接調用,則等同于全局變量
此例中,局部變量ls在函數體中未創建而直接被調用,則認為ls為全局變量,函數對ls的修改直接影響到全局變量ls?
此例中,創建了全局變量和局部變量ls,函數對ls的修改作用于局部變量,局部變量和全局變量是不同的變量
對基本對數據類型,也是可以調用全局變量的,但是不可改變(如果對s進行賦值,那么必須先定義局部變量),比如
s = 1 def func(x): return x**2 + s print(func(3))>>> 10?
?
規則總結:
-
對基本數據類型,這個變量不可變,只能作為輸入參數
-
對于組合數據類型,則這個變量相當于在函數中調用全局變量,是可以被更改
3. 可以使用global保留字在函數中申明全局變量
?
?
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的Python中都全局变量和局部变量的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 字符串、数据类型详解
- 下一篇: 文本字符串中提取数据进行分析