[問題] 執行 LIST 裡的副程式

看板Python作者 (martin)時間6年前 (2018/12/27 15:41), 6年前編輯推噓8(8011)
留言19則, 8人參與, 7年前最新討論串1/1
請問有辦法用 list 把副程式裝起來, 然後用index 的方式執行嗎? fnList =[fn1(),fn2()] fnList[1] #執行 fn2() 我這樣執行的結果是 fnList 裡的副程式會全部執行一次 fnList[1] 的不會執行 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.132.73.76 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1545896488.A.C5E.html ※ 編輯: martin7887 (220.132.73.76), 12/27/2018 15:42:07

12/27 15:50, 6年前 , 1F
fnList = [fn1, fn2] fnList[1]()
12/27 15:50, 1F

12/27 15:50, 6年前 , 2F
fnList =[fn1(),fn2()] 是將 fn1, fn2 跑一遍後將回傳值
12/27 15:50, 2F

12/27 15:51, 6年前 , 3F
放入 list 中
12/27 15:51, 3F

12/27 16:30, 6年前 , 4F
list只是一個連結傳送門,連到你自己定義的東西
12/27 16:30, 4F

12/27 16:31, 6年前 , 5F
推 w 大,原來是這樣用!
12/27 16:31, 5F

12/27 19:05, 6年前 , 6F
非常謝謝
12/27 19:05, 6F

12/27 23:13, 6年前 , 7F
新手發文,好奇這類寫法的應用
12/27 23:13, 7F

12/28 13:13, 6年前 , 8F
多確定被引用或調用的變數型態,或內容噢
12/28 13:13, 8F

12/28 13:16, 6年前 , 9F
一樓正解 這方法另一個應用是用dict map method,就是s
12/28 13:16, 9F

12/28 13:16, 6年前 , 10F
witch case, 很好用,個人覺得可讀性,不會有太多if e
12/28 13:16, 10F

12/28 13:16, 6年前 , 11F
lse
12/28 13:16, 11F

12/28 13:16, 6年前 , 12F
補充 可讀性高
12/28 13:16, 12F

12/28 14:02, 6年前 , 13F
不太了解,要執行指定的method前,不就要寫if else
12/28 14:02, 13F

12/28 15:17, 6年前 , 14F
可以查一下"工廠模式"和"抽象工廠模式"
12/28 15:17, 14F

12/28 15:21, 6年前 , 15F
1) 取出py檔內所有function的命名
12/28 15:21, 15F

12/28 15:23, 6年前 , 16F
2) 製作一個mapping dict {'func_name': func}
12/28 15:23, 16F

12/28 15:25, 6年前 , 17F
參考talib abstract api的做法 https://goo.gl/36fK6y
12/28 15:25, 17F

01/05 14:32, 7年前 , 18F
設計模式好站分享,裡面的範例中幾乎都有python範例
01/05 14:32, 18F

01/05 14:32, 7年前 , 19F
01/05 14:32, 19F
文章代碼(AID): #1S988enU (Python)
文章代碼(AID): #1S988enU (Python)