簡體   English   中英

python 3 - 賦值function

[英]python 3 - assigning the value in function

嗨,我有 function 由修補程序列表框調用,所以我無法從中返回值
基本上我有一個全局 object 我想在 function 中分配它我該怎么做

    rlink = ('http://stackoverflow', 'pastbin.com', 'unix.com')
    clink  = ' '
    # the function
    def listbinding(*args):
        idxs = reslinkbox.curselection()
        idx = int(idxs[0])

        clink = rlink[idx]

我想將 rlink[idx] 分配給全局 object 的 clink 我無法調用 function,tkinter 列表框調用 function 所以我無法從中返回 clink

使用global關鍵字。

 rlink = ('http://stackoverflow', 'pastbin.com', 'unix.com')
 clink  = ' '
 def listbinding(*args):
     global clink
     idxs = reslinkbox.curselection()
     idx = int(idxs[0])

     clink = rlink[idx]

<obligitory>像這樣使用全局變量通常不是一個壞主意,因為它會在整個模塊中塗抹你的程序 state 而不是將它分解成漂亮的離散塊。 防止這種情況是名稱空間的全部目的。 許多計算機科學家花費了多年艱苦而吃力不討好的工作才為您帶來了這些知識。 </obligitory>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM