下面的例子演示了用3種方法來在外部引用函數內部定義的列表:
我們提供的服務有:成都做網站、成都網站設計、微信公眾號開發、網站優化、網站認證、欽北ssl等。為成百上千家企事業單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的欽北網站制作公司
#返回函數內部定義的列表
def int_list1():
l=[1,2]
return l
#將函數內部列表定義成全局的
def int_list2():
global l
l=[3,4]
#將函數內部列表定義成函數的一個屬性
def int_list3():
l=[5,6]
int_list3.l=l
print(int_list1())
int_list2()
print(l)
int_list3()
print(int_list3.l)
這是截圖:
變量的引用
變量和數據都是保存在內存中的
變量和數據是分開存儲的
數據保存在內存中某個位置,通過地址來標記
變量保存的是數據的地址,通過地址可以找到數據在內存空間的位置
把變量保存數據地址的過程稱為引用
變量的重新賦值修改的是變量中引用數據的內存地址
變量之間的賦值實際是引用的傳遞
函數參數的傳遞,本質也是引用的傳遞
函數的返回值本身也是引用的傳遞
可變和不可變類型
不可變類型,內存中的數據不允許被修改:數字類型(int,bool,float,complex,long(2,x)、字符串、元組(tuple)
可變類型,內存中的數據可以被修改:列表list、字典dict
無論是可變還是不可變數據類型,通過賦值語句,都會改變變量的引用
Hash函數只能接收不可變數據類型,字典的鍵也只能是不可變數據類型,字典的value值可以是任意數據類型
局部變量
1.在函數內部定義的變量就是局部變量(作用范圍只能是當前函數內部)
2.在函數外部無法直接訪問局部變量
3.不同的函數中可以定義同名的局部變量
4.局部變量的生命周期:從定義變量時開始,到函數運行結束
全局變量
1.在所有函數外邊定義的變量就是全局變量
2.讓所有函數都能訪問到,可以作為函數通信的橋梁
3.一般情況下,為了和普通變量的區別,需要加上g_或gl_前綴
4.全局變量一般放在所有函數的最上面
5.在函數內部修改全局變量,必須要加上global關鍵字,如果不加global只是定義了一個同名的局部變量
函數的多個返回值
如果知道每個函數的名字,可以from math import 函數1,函數2,...,函數n
如果導入全部函數就from math import *,但是一般不建議這么做,還是import math比較好。
選中需要查看的函數(光標移到函數所在的位置),然后使用eclipse快捷鍵Ctrl+Shift+G,然后就會在search窗口中看到函數調用的樹狀結構圖。
以最簡單的一個代碼為例:
class A:
s="hello"
def p(self):
? print(self.s)
if __name__ == '__main__':
a=A()
a.p()
光標移到第4行p的位置,然后Ctrl+Shift+G,得到如下所示:
文章題目:python的函數引用 Python如何引用函數
分享路徑:http://m.kartarina.com/article28/dodshcp.html
成都網站建設公司_創新互聯,為您提供品牌網站設計、網站改版、服務器托管、全網營銷推廣、網站排名、響應式網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯