python文件引入问题

有以下目录结构:

- cat1
	- cat2
		- sub.py
- main.py  

sub.py:

print('sub')

main.py:

from cat1.cat2 import sub

print('main')

则可以直接在cat1平级目录下运行main:

> python main.py
sub
main

但是如果目录结构如下:

- cat1
	- cat2
		- sub.py
		- main.py  

则需要添加两行sys相关代码,才能在cat1平级目录运行main
main.py:

import sys
sys.path.append('./')
from cat1.cat2 import sub

print('main')
> python cat1/cat2/main.py
sub
main

如果要在cat2目录下运行main文件,则main写成:

import sys
sys.path.append('../../')
from cat1.cat2 import sub

print('main')
> python main.py
sub
main

你可能感兴趣的:(python)