Saya menemukan sebuah pertanyaan, mengapa saya mengembalikan sebuah variabel global di dalam kamus, dan ketika saya memanggilnya, variabel tersebut akan tertutup, ya, kode di bawahnya, tiga baris yang bernomor # itu secara logis seharusnya dicetak juga 1, 2, 3, ya, tapi sebenarnya dicetak 3, 3, 3 tidak jelas. Ini adalah masalah yang saya temukan dalam pengulangan, dan menemukan bahwa hasilnya dicetak sama, dan kemudian langkah demi langkah menemukan akarnya di sini. Saya mengubah variabel global menjadi variabel lokal tidak ada masalah ini, tetapi saya ingin memahami mengapa ini tidak berhasil, mohon jawabannya. 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()
Mengapa saya mencetak seperti ini? {‘one’: 3} {‘one’: 3} {‘one’: 3}