看板 Python 關於我們 聯絡資訊
延續上篇討論,目前已採用參數來實現。 另外一個延伸問題 fun1判斷test1來決定是否呼叫fun4 整個流程是start1()->fun1() -> 判斷test1為1才呼叫fun4() 第二個問題是fun3需要判斷fun2的test值,如果是1就印出Hello, 可是是fun2跟fun3是同層,fun3要怎麼調用fun2底下的test2? 另外test1這種寫法是對的嗎,跳了好幾層看了就覺得怪怪的 謝謝 def start1(test1): a1='xxx' a2='xxx' a3='xxx' fun1(a1,test1) fun2(a2) fun3(a3) def fun1(a1,test1): if(test1==1): fun4() def fun2(a2): test2=X def fun3(a3,test2): if(test2==1): print('Hello') def fun4(): -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 106.104.34.155 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1628534512.A.B4C.html
s0914714: 我不太清楚你的需求 但是個人覺得你的fun應該可以改寫 08/10 04:54
s0914714: fun1可以改成回傳boolean 在start1判斷如果fun1是True 08/10 04:57
s0914714: 就執行fun4 08/10 04:58
s0914714: fun2不太清楚目的 是要將global的test2設成X? 08/10 04:59
s0914714: fun3跟fun1作法一樣 08/10 05:01
s0914714: 除非你的test1跟test2可以依照不同情境對應不同執行流 08/10 05:02
s0914714: 例如test1==1做A test1==2做B 那麼你原本的設計是OK的 08/10 05:05
a367560: 第一個問題 邏輯上來看沒有大問題 08/10 07:01
a367560: 第二個問題 看起來是要把start1(test)底下改寫成 08/10 07:03
a367560: fun3(a3,fun2(a2)) 這樣?(有點不太確定) 08/10 07:05
a367560: 然後利用fun2去return出test2的數值 08/10 07:07
aassdd926: 其實如果只是程式邏輯,有好多種解法,重要的是需求是 08/10 22:56
aassdd926: 什麼,才能知道怎麼寫比較好 08/10 22:56