なぜ辞書の一つのグローバル変数を返すと,呼び出すと変数が覆われるのかという疑問に気づきました. #という3行は,理屈的には1,2,3と印刷されるはずでしたが,実際に印刷されたのは3,3,3でした. わかりませんでした. これは,私が反省で発見した問題です. 結果は,すべて印刷され,次に,一歩ずつその根源を見つけました. def fun(a): dict_zz[‘one’] = a return dict_zz def main(): params() dict_zz_15min = fun(1) dict_zz_1h = fun(2) dict_zz_4h = fun(3) print(dict_zz_15min) # print(dict_zz_1h) # print(dict_zz_4h) #
def params(): global dict_zz dict_zz = {} main()
なぜこんなふうに印刷したのでしょう? {‘one’: 3} {‘one’: 3} {‘one’: 3}