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

作者: leoone (里歐一代)   2018-12-09 20:06:20
如提
想請教版上的大大
想要在A.py的def內呼叫B.py的def,但不想在程式一開始就直接執行,
因為有先後順序關係,不能放進 if __name__ == '__main__': 裡
請問有其他的寫法嗎@@?
作者: XperiaZ6C (真●安卓輕旗艦)   2018-12-09 20:15:00
import B不想一開始呼叫的話就放在你要的函數內即可
作者: TakiDog (多奇狗)   2018-12-09 20:16:00
看不懂你要表達的東西
作者: lajji (喇機)   2018-12-09 22:44:00
雖然看不太懂 不過import應該是你想要的
作者: TitanEric (泰坦)   2018-12-10 16:41:00
from B import def name
作者: leoone (里歐一代)   2018-12-11 10:16:00
感謝各位大大 我有import B 不過他還是很神奇的一開始就執行了XD 最後是直接把A.def直接寫在 if__name__ == '__main__ ':裡才解決 ㄒㄒ
作者: lemon651 (小明)   2018-12-11 10:33:00
一開始就執行是你一開始就call function了吧 import而已不可能執行我感覺是你兩個A的架構有問題
作者: iphone2003 (307)   2018-12-11 14:27:00
回樓上,python在import module時就會執行一遍沒錯喔,所以樓主遇到的問題是正常的如果只是想要import B.py中的某個函數,不希望執行B.py的其它部分的話,可以在B.py中加入if __name__ == '__main__',這樣應該就解決了

Links booklink

Contact Us: admin [ a t ] ucptt.com