J'ai trouvé un problème, pourquoi je retourne un dictionnaire global variable, et quand on l'appelle, la variable est recouverte ah, le code est en dessous, les trois lignes # qui devraient être imprimées en théorie sont aussi 1, 2, 3 ah, mais en fait imprimé est 3, 3, 3 confus. . C'est le problème que j'ai trouvé dans la rétro-évaluation, et j'ai trouvé que les résultats sont imprimés tous les mêmes, puis étape par étape trouver la racine et trouver ici. .
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()
Pourquoi je l'ai imprimé comme ça ?
{'one': 3}
{'one': 3}
{'one': 3}
不是key的问题吧,我全局变量换成局部变量就没问题的啊,像这样key不也覆盖的吗?
def fun(a):
dict_zz = {}
dict_zz['one'] = a
return dict_zz
def main():
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)
main()
- 1
