我在任何地方都能看到使用import sys或的Python代码导入模块import mymodule
import sys
import mymodule
如果没有提供目录或路径,解释器如何找到正确的文件?
http://docs.python.org/3/tutorial/modules.html#the-module-search- path
6.1.2。模块搜索路径 spam导入名为的模块时,解释器首先搜索具有该名称的内置模块。如果未找到,那么它将搜索spam.py该变量给定的目录列表中命名的文件sys.path。sys.path从以下位置初始化: 包含输入脚本的目录(如果未指定文件,则为当前目录)。 PYTHONPATH(目录名称列表,语法与shell变量相同PATH)。 取决于安装的默认值。 注意:在支持符号链接的文件系统上,在遵循符号链接之后计算包含输入脚本的目录。换句话说,包含符号链接的目录不会添加到模块搜索路径中。 初始化后,Python程序可以进行修改sys.path。包含正在运行的脚本的目录位于搜索路径的开始,在标准库路径之前。这意味着将加载该目录中的脚本,而不是库目录中相同名称的模块。除非打算进行更换,否则这是一个错误。有关更多信息,请参见标准模块部分。
6.1.2。模块搜索路径
spam导入名为的模块时,解释器首先搜索具有该名称的内置模块。如果未找到,那么它将搜索spam.py该变量给定的目录列表中命名的文件sys.path。sys.path从以下位置初始化:
spam
spam.py
sys.path
PYTHONPATH
PATH
注意:在支持符号链接的文件系统上,在遵循符号链接之后计算包含输入脚本的目录。换句话说,包含符号链接的目录不会添加到模块搜索路径中。
初始化后,Python程序可以进行修改sys.path。包含正在运行的脚本的目录位于搜索路径的开始,在标准库路径之前。这意味着将加载该目录中的脚本,而不是库目录中相同名称的模块。除非打算进行更换,否则这是一个错误。有关更多信息,请参见标准模块部分。
有关“特定于安装的默认设置”的信息,请参阅模块上的site文档。
site