久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

python - 關于函數調用的問題

瀏覽:141日期:2022-09-23 09:04:32

問題描述

def test1(): a = 1 b = 2 def test2(): c = 3 d = c + a print(d)test2這邊想實現下面的test2調用上面test1里面的數據,要怎么實現,使用的是python3

問題解答

回答1:

首先,你這種需求是不可能且不合理的,兩個分立的函數不可能相互訪問里面的變量的

如果用閉包倒是可以做到,不過不知道是不是你想要的:

def test1(): a = 1 b = 2 def test2():c = 3d = c + aprint(d) return test2test2 = test1()test2()回答2:

可以將test1封裝為一個類

#-*-coding:utf8-*-class test1(): '''docstring for test1''' def __init__(self):self.a=0self.b=0self.test1() def test1(self):self.a=1self.b=2test = test1()def test2(): c=3 d=c+test.a print (d)test2()

初始化可以放在你想調用的位置,并且在初始化的時候默認調用了test1()方法,這樣就可以通過類的對象訪問數據了。

回答3:

可以讓test1用return來返回a和b的值:

def test1(): a = 1 b = 2 return a,bdef test2(): c = 3 a,b = test1() d = c + a print(d)test2()回答4:

哈哈,都是人才,閉包、封類、明確返回,以上每一個都是獨立的解決辦法。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 二连浩特市| 子长县| 兴安盟| 苗栗县| 原阳县| 达拉特旗| 泰和县| 嘉荫县| 万安县| 堆龙德庆县| 汨罗市| 富源县| 邮箱| 铜陵市| 峨山| 太仓市| 中阳县| 合阳县| 永丰县| 德安县| 兴义市| 禄丰县| 团风县| 泰顺县| 安多县| 珲春市| 霸州市| 电白县| 和政县| 嫩江县| 湘阴县| 渑池县| 信阳市| 汉川市| 扎赉特旗| 石家庄市| 二连浩特市| 鄂州市| 开原市| 弥勒县| 抚州市|