簡體   English   中英

Python 內部 function 運行時復雜度

[英]Python inner function runtime complexity

假設我寫了一個 function 來創建另一個 function,比如:

def g(x):
    #do stuff
    def h(y):
        return x*y
    return h

my_func = g(10)
for i in range(100):
    print(my_func(i))

在我for循環中,我調用了my_func一百次,但是由於我只調用一次g來創建my_func ,我希望我的代碼的#do stuff位只會在開始時運行一次,而不是每次循環迭代運行一次。

任何人都可以確認這確實是這種情況,還是會在 for 循環中每次都運行? 我在其他地方找不到滿意的答案。

正確,如果有一行代碼在#do stuff所在的位置,則在此示例中它只會運行一次。

提示:如果你用print("test")替換了它,你可以自己檢查一下。

暫無
暫無

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

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