Python: PYTHONHOME和PYTHONPATH的区别

Python: PYTHONHOME和PYTHONPATH的区别PYTHONHOME和PYTHONPATH的区别官方文档解读:https://docs.python.org/3/tutorial/modules.html6.1.2. The Module Search PathWhen a module named spam is imported, the interpreter first searches for a built-in module with that name. If not found, it then searches for a file named spam.py in a list of directories given by the variable sys.path. sys.path is initialized from these locations:The directory containing the input script (or the current directory when no file is specified).PYTHONPATH (a list of directory names, with the same syntax as the shell variable PATH).The installation-dependent default.当导入名为spam的模块时,解释器首先搜索具有该名称的内置模块。如果没有找到,它会搜索一个名为spam.py的文件。变量sys.path. sys给出的目录列表中的py。路径是从这些位置初始化的:包含输入脚本的目录(或未指定文件时的当前目录)。PYTHONPATH(一个目录名列表,与shell变量PATH具有相同的语法)。installation-dependent默认。Note:On file systems which support symlinks, the directory containing the input script is calculated after the symlink is followed. In other words the directory containing the symlink is not added to the module search path.After initialization, Python programs can modify sys.path. The directory containing the script being run is placed at the beginning of the search path, ahead of the standard library path. This means that scripts in that directory will be loaded instead of modules of the same name in the library directory. This is an error unless the replacement is intended. See section Standard Modules for more information.注意:在支持符号链接的文件系统上,包含输入脚本的目录是在符号链接之后计算的。换句话说,包含符号链接的目录没有添加到模块搜索路径中。初始化之后,Python程序可以修改sys.path。包含正在运行的脚本的目录位于搜索路径的开头,在标准库路径的前面。这意味着将加载该目录中的脚本,而不是库目录中的同名模块。除非是有意替换,否则这是一个错误。有关更多信息,请参见标准模块一节。​​​​​​​sys.pathsys.path 包含输入模块的目录名列表,并且当前目录也是sys.path的一部分。

(0)

相关推荐

  • python -m 参数释义 模块

    -m: run library module as a script(将模块当作脚本运行) 解释 在 python 中,所谓的模块,其实也是一个由代码组成的普通脚本文件.这些文件通常会提供一些有用的东 ...

  • 非常干货:Python 探针实现原理

    作者丨mozillazg https://segmentfault.com/a/1190000004889212 本文呢,将简单讲述一下 Python 探针的实现原理.同时为了验证这个原理,我们也会一 ...

  • ubuntu 将目录添加到 PYTHONPATH 会导致我的主目录也被添加

    我尝试/home/myname/bin通过将以下内容插入到我的 PYTHONPATH 中来将该目录添加到我的 PYTHONPATH 中.bashrc: if [ -d ~/bin ]; thenexp ...

  • Python和Matlab有什么区别?一分钟看懂!

    俗话说得好:技多不压身!近几年,随着社会的发展,竞争越来越大,为了获得长久发展,很多人都开始转行学技术,这其中有人会选择学Python,当然也有人想要学Matlab,那么Python和Matlab哪个 ...

  • python笔记18-sort和sorted区别

    前言 python的排序有两个方法,一个是list对象的sort方法,另外一个是builtin函数里面sorted,主要区别: sort仅针对于list对象排序,无返回值, 会改变原来队列顺序 sor ...

  • Python中Json和dict区别对比?入门分享!

    最近有人问小编说:Python开发中字典和Json的区别是什么?关于这个问题,小编通过下文为大家介绍一下. 什么是字典? 字典是一种数据结构,而json是一种数据格式就会有一些形式上的限制,比如jso ...

  • Python迭代器与生成器的区别!

    无论你是Python初学者还是爱好者,相信大家都听说过迭代器与生成器,但是很多同学搞不懂Python迭代器与生成器到底是什么?它们之间又有什么样的关系呢?接下来,小编通过这篇文章为大家介绍一下. 什么 ...

  • Python:loc和iloc的区别

    loc和iloc的区别 pandas以类似字典的方式来获取某一列的值,比如df['A'],这会得到df的A列.如果我们对某一行感兴趣呢?这个时候有两种方法,一种是iloc方法,另一种方法是loc方法. ...

  • Python和人工智能有什么区别?

    转行学编程,很多人都纠结学习Python还是人工智能,其实有很多人没有搞清楚二者的关系,接下来我们一起来看看Python与人工智能的区别是什么?Python和人工智能有什么关系? Python和人工智 ...

  • 致Python初学者:3分钟带你搞懂Python模块、包的区别和使用

    https://m.toutiao.com/is/JE2DFHP/ 一.模块和包的定义 模块的定义:任何*.py 的文件都可以当作模块使用import 导入 包的定义:包含一个__init__.py和 ...

  • Python和shell有什么区别?

    shell是一个用C语言编写的程序,也是用户使用Linux的关键,它既是一种命令语言,也是一种程序设计语言,与Python一样,同属于脚本语言.那么Python和shell有什么区别?我想很多人都不太 ...

  • Python和access有什么区别?

    很多人因为对IT行业不太了解,所以经常会拿编程和其他IT知识进行对比,比如说Python和access.那么Python和access的区别有哪些呢?从本质来讲,Python是一种编程语言,acces ...