test1.py
python
1def add(): 2 Data = [1,2,3] 3 print(id(Data)) 4 5if __name__ == '__main__': 6 Data = [] 7 add() 8 print(id(Data))
と
test2.py
python
1def add(): 2 Data = [1,2,3] 3 print(id(Data)) 4 5def main() ->None: 6 Data = [] 7 add() 8 print(id(Data)) 9 10if __name__ == '__main__': 11 main()
に関してです。
idを確認すれば違うことはわかるのですが、
どちらも、Dataが変数として通ってくれません。
1.変数の取扱いに関して
test1.py,test2.pyともに
main()のData
と
add()のData
を同じ変数として扱いたいです。
2.test1.pyとtest2.pyの書き方に関して
別の質問に回答いただいた方より、
test1.pyのような書き方をしていたところ
「#モジュール空間の汚染を避けるためにスコープを切る」ために
test2.pyにした方が良いですよ。とのご教授をいただきました。
これは、そもそもコードの内容が全然違うので、
この質問で「#モジュール空間の汚染を避けるためにスコープを切る」為に
だけお伝えしてもなんのこっちゃ分からないかと思うのですが、
もし何かわかるのであればお教えいただけませんでしょうか。
文章が、分かりにくくて申し訳ありません。
初歩的な質問かと思いますが、宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー