Encontré una pregunta, por qué regreso una variable global del diccionario, y cuando la llamo, la variable se cubre Ah, el código está debajo, las tres líneas del número # deberían haber sido impresas en teoría también como 1, 2, 3 Ah, pero en realidad se imprimió como 3, 3, 3 Ah, no entiendo. Este es el problema que encontré en la revisión, encontré que los resultados se imprimieron todos iguales, y luego, paso a paso, encontré la raíz aquí.
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()
¿Por qué lo imprimí así?
{'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
