作者phoenixcx (曼秀雷敦)
看板Python
標題[問題] 可以用迴圈呼叫function嗎?
時間Fri May 3 10:58:05 2019
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://webptt.com/m.aspx?n=bbs/Python/M.1556852288.A.394.html
1F:推 jiyu520: 可以 05/03 11:03
2F:→ jiyu520: 可以查一下 工廠模式 05/03 11:04
3F:推 jiyu520: 或google >> call functions from list 05/03 11:06
4F:→ phoenixcx: 感謝大大 馬上學習一下 05/03 11:07
5F:推 jiyu520: 也可查一下python function call by string 05/03 11:21
6F:→ phoenixcx: 有了 用getattr大概最簡單了 05/03 11:44
7F:推 TitanEric: 存在dict也很方便唷 05/03 13:10
8F:→ adrianshum: 如果沒必要放string, 直接把 method 的symbol 放裡面 05/03 15:15
9F:→ adrianshum: 就好了 05/03 15:15
10F:→ adrianshum: I.e. arr=[func_1, func_2] 05/03 15:16
11F:推 alan23273850: 推 05/06 14:14