[問題] 可以用迴圈呼叫function嗎?

看板Python作者 (曼秀雷敦)時間6年前 (2019/05/03 10:58), 編輯推噓5(506)
留言11則, 5人參與, 6年前最新討論串1/1
def tmp_sum(tag,cname): return tag+cname def tmp_mod(ttag,su): return ttag*su a=['tmp_sum','tmp_mod'] for x in a: i=x(4,3) 有辦法將要呼叫的function由list取出放入x再呼叫他嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.21.19.175 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1556852288.A.394.html

05/03 11:03, 6年前 , 1F
可以
05/03 11:03, 1F

05/03 11:04, 6年前 , 2F
可以查一下 工廠模式
05/03 11:04, 2F

05/03 11:06, 6年前 , 3F
或google >> call functions from list
05/03 11:06, 3F

05/03 11:07, 6年前 , 4F
感謝大大 馬上學習一下
05/03 11:07, 4F

05/03 11:21, 6年前 , 5F
也可查一下python function call by string
05/03 11:21, 5F

05/03 11:44, 6年前 , 6F
有了 用getattr大概最簡單了
05/03 11:44, 6F

05/03 13:10, 6年前 , 7F
存在dict也很方便唷
05/03 13:10, 7F

05/03 15:15, 6年前 , 8F
如果沒必要放string, 直接把 method 的symbol 放裡面
05/03 15:15, 8F

05/03 15:15, 6年前 , 9F
就好了
05/03 15:15, 9F

05/03 15:16, 6年前 , 10F
I.e. arr=[func_1, func_2]
05/03 15:16, 10F

05/06 14:14, 6年前 , 11F
05/06 14:14, 11F
文章代碼(AID): #1Sowv0EK (Python)
文章代碼(AID): #1Sowv0EK (Python)