Python 3.8解析导入路径

Python 3.8解析导入路径,python,python-3.x,python-3.8,Python,Python 3.x,Python 3.8,在Python3.7之前,每当我在站点包和指定为PYTHONPAH的目录中有一个包(例如:mypackage)时,导入它将导致Python从PYTHOPATH目录加载它 例如,使用以下目录 /site-packages ... mypackage ... /somedir /mylibraries ... mypackage ... 设置PYTHONPATH=/somedir/mylibraries,下面的代码将

在Python3.7之前,每当我在
站点包和指定为
PYTHONPAH
的目录中有一个包(例如:
mypackage
)时,导入它将导致Python从PYTHOPATH目录加载它

例如,使用以下目录

/site-packages
    ...
    mypackage
    ...

/somedir
    /mylibraries
        ...
        mypackage
        ...
设置
PYTHONPATH=/somedir/mylibraries
,下面的代码将导入它
/somedir/mylibraries

import sys
print(sys.path) # [..., '/somedir/mylibraries' ,...]

import mypackage
print(mypackage.__path__) # '/somedir/mylibraries/mypackage'
升级到Python 3.8后,关于路径解析的一些主要问题似乎有所改变:

import sys
print(sys.path) # [..., '/somedir/mylibraries' ,...]

import mypackage
print(mypackage.__path__) # '.../site-packages/mypackage'

如何在Python 3.8中从PYTHONPAH导入库?

/somedir/mylibraries
相关的
sys.path
中的
站点包在哪里(首先是/somedir/mylibraries,然后是站点包)Python3.7和3.8都是这样吗?我手头没有Python3.7env,因为我们切换到了3.8