[英]importing sibling file in a module in python3
我的python項目有這個目錄結構
├── main.py
└── util
├── color.py
├── __init__.py
└── student.py
main.py
是:
from util.student import fun
fun("calling fun from main")
color.py
是:
def color_fun(a):
print(a)
student.py
是:
from color import color_fun
def fun(var):
color_fun(var)
if __name__ == "__main__":
fun("calling fun from student")
__init__.py
為空
當我嘗試運行python3 student.py
它按預期工作。 但是當我嘗試運行python3 main.py
它沒有按預期工作,而它在python2中工作正常。
我想運行python3 student.py
以及python3 main.py
我怎么能實現這個?
您需要做的就是在student.py
稍作修改
def fun(var):
color_fun(var)
if __name__ == "__main__":
from color import color_fun
fun("calling fun from student")
else:
from util.color import color_fun
Python3的PYTHONPATH
導致了這個問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.