[問題] def 內呼叫其他py檔def

看板Python作者 (里歐一代)時間6年前 (2018/12/09 20:06), 編輯推噓6(6010)
留言16則, 7人參與, 6年前最新討論串1/1
如提 想請教版上的大大 想要在A.py的def內呼叫B.py的def,但不想在程式一開始就直接執行, 因為有先後順序關係,不能放進 if __name__ == '__main__': 裡 請問有其他的寫法嗎@@? -- Sent from my Windows -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.118.175.154 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1544357182.A.7DF.html

12/09 20:15, 6年前 , 1F
import B
12/09 20:15, 1F

12/09 20:15, 6年前 , 2F
不想一開始呼叫的話就放在你要的函數內即可
12/09 20:15, 2F

12/09 20:16, 6年前 , 3F
看不懂你要表達的東西
12/09 20:16, 3F

12/09 22:44, 6年前 , 4F
雖然看不太懂 不過import應該是你想要的
12/09 22:44, 4F

12/10 16:41, 6年前 , 5F
from B import def name
12/10 16:41, 5F

12/11 10:16, 6年前 , 6F
感謝各位大大 我有import B 不過他還是很神奇的一開始就
12/11 10:16, 6F

12/11 10:16, 6年前 , 7F
執行了XD 最後是直接把A.def直接寫在 if__name__ == '__ma
12/11 10:16, 7F

12/11 10:16, 6年前 , 8F
in__ ':裡才解決 ㄒㄒ
12/11 10:16, 8F

12/11 10:33, 6年前 , 9F
一開始就執行是你一開始就call function了吧 import而已
12/11 10:33, 9F

12/11 10:33, 6年前 , 10F
不可能執行
12/11 10:33, 10F

12/11 10:34, 6年前 , 11F
我感覺是你兩個A的架構有問題
12/11 10:34, 11F

12/11 14:27, 6年前 , 12F
回樓上,python在import module時就會執行一遍沒錯喔
12/11 14:27, 12F

12/11 14:27, 6年前 , 13F
,所以樓主遇到的問題是正常的
12/11 14:27, 13F

12/11 14:29, 6年前 , 14F
如果只是想要import B.py中的某個函數,不希望執行B.p
12/11 14:29, 14F

12/11 14:29, 6年前 , 15F
y的其它部分的話,可以在B.py中加入if __name__ == '_
12/11 14:29, 15F

12/11 14:29, 6年前 , 16F
_main__',這樣應該就解決了
12/11 14:29, 16F
文章代碼(AID): #1S3GK-VV (Python)
文章代碼(AID): #1S3GK-VV (Python)