# in mylib.py file
from . import xml
from .xml import some_thing
from ..xml import some_thing
...
Welcher Pfad wird als Stammverzeichnis für diese Art der expliziten relativen Referenz verwendet? Insbesondere wenn das obige Programm selbst auch eine Programmbibliothek ist, wird es nach seiner Veröffentlichung von anderen Benutzern verwendet
import mylib
Welcher Pfad wird dann relativ zu diesem Zeitpunkt berechnet?
Noch eine Frage,
import os
assert os.path.isdir(',')
Das ist kein Problem. Aber einige Bibliotheken, wie zum Beispiel PIL
import PIL
PIL.Image(...) # 就会报错,找不到Image,需要显式的
import PIL.Image
PIL.Image(...) # OK
Warum ist das so? Vielen Dank im Voraus.
.(dot) 是以你当前运行文件路径为当前路径
发布后被其他用户引用, 在你Python安装目录下有一个Lib目录, 直接像import os这样的是引用该目录下全局的模块
可以运行是因为os是一个模块, 也是一个可运行的python文件
而PIL那个例子,因为没有我没有PIL,我只能不负责任的猜测PIL不是一个模块