Type/to search
3
Follow
0
Followers
Saya mempunyai masalah dengan pembolehubah global python Tolong bantu saya menyelesaikannya.
Help
Created 2021-09-08 14:20:01  Updated 2021-09-08 15:09:44
 6
 1198

Saya mendapati satu masalah, mengapa saya kembalikan satu global variable kamus, dan apabila dipanggil semula, ia akan dilapisi, ah, kod di bawah, tiga baris nombor # itu secara logiknya dicetak juga 1, 2, 3, ah, tetapi ia sebenarnya dicetak 3, 3, 3 tidak dapat difahami. Ini adalah masalah yang saya dapati dalam percubaan semula, dan mendapati bahawa hasilnya dicetak sama, kemudian langkah demi langkah mencari akarnya di sini. Saya mengubah global variable menjadi lokal variable tidak ada masalah ini, tetapi saya ingin memahami mengapa ia tidak berfungsi, mohon jawapan yang besar.
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()

Kenapa saya cetak seperti ini?
{'one': 3}
{'one': 3}
{'one': 3}

Related Recommendations
Comment
All comments (6)

    你用的同一个key,都覆盖了.你学习下python的基础

    5 years ago

    你这话有点瞧不起人了啊,什么算python基础呢?我之前在聚宽就用python写策略了....

    5 years ago

    def fun(a):

    dict_zz['one'] = a
    return dict_zz
    def main():
    params()
    dict_zz_15min = fun(1)
    print(dict_zz_15min)
    dict_zz_1h = fun(2)
    print(dict_zz_1h)
    dict_zz_4h = fun(3)
    print(dict_zz_4h) #

    def params():
    global dict_zz
    dict_zz = {}
    main()

    5 years ago

    你直接说字典是浅拷贝我就明白了......我的锅,学了这么久python这个都没搞懂

    5 years ago

    不是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()

    5 years ago

    不是key的问题吧,我全局变量换成局部变量就没问题的啊

    5 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)