python教程—如果import语句只包含文件名,python如何查找模块文件?-Python实用宝典

python教程—如果import语句只包含文件名,python如何查找模块文件?

无论我在哪里看到Python代码使用import sys或import mymoduleimport导入模块,如果没有提供目录或路径,解释器如何找到正确的文件?

到处都可以看到Python代码使用import sys或import mymodule导入模块

如果没有提供目录或路径,解释器如何找到正确的文件?

回答

< a href = " http://docs.python.org/3/tutorial/modules.html the-module-search-path”rel = " noreferrer " > http://docs.python.org/3/tutorial/modules.html the-module-search-path < / >

6.1.2。模块搜索路径

当导入名为spam的模块时,解释器首先搜索具有该名称的内置模块。如果没有找到,则在变量sys.path给出的目录列表中搜索一个名为spam.py的文件。sys。路径从以下位置初始化:

  • 包含输入脚本的目录(或未指定文件时的当前目录)。
  • PYTHONPATH(目录名列表,与shell变量PATH语法相同)。
  • installation-dependent默认。

注意:在支持符号链接的文件系统上,包含输入脚本的目录在符号链接之后计算。换句话说,包含符号链接的目录不会添加到模块搜索路径中。

初始化之后,Python程序可以修改sys.path。包含正在运行的脚本的目录位于搜索路径的开头,在标准路径之前。这意味着将加载该目录中的脚本,而不是目录中的同名模块。除非是有意替换,否则这是一个错误。有关更多信息,请参见标准模块部分。

有关“特定于安装的缺省值”的信息,请参阅上的文档。

​Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典

本文由 Python实用宝典 作者:Python实用宝典 发表,其版权均为 Python实用宝典 所有,文章内容系作者个人观点,不代表 Python实用宝典 对观点赞同或支持。如需转载,请注明文章来源。
1

发表评论