Python模块搜索路径】的更多相关文章

当一个名为 spam 的模块被导入的时候,解释器首先寻找具有该名称的内置模块.如果没有找到,然后解释器从 sys.path 变量给出的目录列表里寻找名为 spam.py 的文件.sys.path 初始有这些目录地址: 包含输入脚本的目录(或者未指定文件时的当前目录).PYTHONPATH (一个包含目录名称的列表,它和shell变量 PATH 有一样的语法).取决于安装的默认设置注解 在支持符号链接的文件系统上,包含输入脚本的目录是在追加符号链接后才计算出来的.换句话说,包含符号链接的目录并 没…
最近在看<Python源码剖析>,对Python内部运行机制比以前了解的更深入了,感觉自己有机会也可以做个小型的动态脚本语言了,呵呵,当然是吹牛了.目的当然不是创造一个动态语言,目的只有一个:更好的使用Python.看到模块导入那块的时候,终于对模块导入机制比较了解了,以防忘记特记录下来. 模块的搜索路径 模块的搜索路径都放在了sys.path列表中,如果缺省的sys.path中没有含有自己的模块或包的路径,可以动态的加入(sys.path.apend)即可.下面是sys.path在Windo…
Python 会在什么地方寻找文件来导入模块? 使用命名为 path 变量的存储在标准 sys 模块 下的一系列目录名和 ZIP 压缩文件. 你可以读取和修改这个列表.下面是在我的 Mac 上 Python 3.3 的 sys.path 的内容: >>> import sys >>> for place in sys.path: ... print(place) ... /Library/Frameworks/Python.framework/Versions/3.3/…
在python交互模式下输入: help('modules') #可以显示出已安装的模块 在python交互模式下输入: import sys sys.path #可以显示出模块搜索路径 增加搜索路径的方法: 一. sys.path.append() #此方法仅临时修改搜索路径,程序运行完成即结束 二. 在系统环境变量中添加PYTHONPATH,添加方法类似于PATH,如: export PYTHONPATH=/home/username/programs/bin:$PYTHONPATH…
在导入自定义的模块时,除了指定模块名之外,也需要指定目录,由于Python把目录称作包,因此,这类导入被称为包导入.包导入把计算机上的目录变成Python的命名空间,而目录中所包含的子目录和模块文件则对应命名空间中的属性. Python已经导入的模块保存在一个内置的sys.modules字典中,以便记录哪些模块已经记录了. 一,模块搜索路径 导入过程首先需要定位导入文件的位置,也就是,告诉Python到何处去找到要导入的文件,因此,需要设置模块的搜索路径.在大多数情况下,Python会自动到默认…
一.模块的循环导入问题 run.py # import m1 # 第一次导入 m1.py # 错误示范 ''' print('正在导入m1') from m2 import y #第一次导入m2 x='m1' ''' m2.py # 错误示范 ''' print('正在导入m2') from m1 import x y='m2' ''' 解决方案: 一:把循环导入的语句放到名字定义的后面 # m1.py# y='m2' # from m1 import x # m2.py # print('正在…
一.昨日作业讲解 先来回顾一下昨日的内容 1.os模块 和操作系统交互 工作目录 文件夹 文件 操作系统命令 路径相关的 2.模块 最本质的区别 import会创建一个专属于模块的名字, 所有导入模块中的都会在这个空间中 import from import as 起别名 * 和 __all__ 作业讲解:os.listdir() 返回一个列表,里面的每一个元素都是相对路径值就是文件,或者文件夹 使用递归的方式实现 import os def get_size(dir): sum_size =…
为Python加入默认模块搜索路径 方法一:函数加入 1) import sys 2) 查看sys.path 3) 加入sys.path.append("c:\\") 方法二:改动环境变量 windows用户能够改动系统环境变量PYTHONPATH 方法三:添加.pth文件,推荐! 在site-packages加入一个路径文件,如mypkpath.pth,必须以.pth为后缀,写上你要加入的模块文件所在的文件夹名称就是了. 1) windows c:\python27\site-pac…
06.05自我总结 一.模块导入及使用 1.模块导入的两种方式 我们拿time模块并使用其中的time功能进行举例 a)第一种 import time print(time.time) import首次导入模块发生了3件事: 打开模块文件 执行模块对应的文件,将执行过程中产生的名字都丢到模块的名称空间 在程序中会有一个模块名称指向模块名称空间(如果他是import time as f)则是f指向模块空间 在当前执行文件中拿到一个模块名 b)第二种 from time import time pr…
如何将写好的脚本或者是模块加入python的搜索路径? >>>import sys >>> sys.path ['', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python34.zip', '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4', '/Library/Frameworks/Python.framework/Ve…
# -*- coding: utf-8 -*- #python 27 #xiaodeng #修改模块搜索路径(注意:py运行完毕,就会失效,他只是临时产生效果) import sys print sys.path ''' ['C:\\Users\\Administrator\\Desktop', 'C:\\Python27\\Lib\\idlelib', 'C:\\Python27\\lib\\site-packages\\xlwt-1.0.0-py2.7.egg', 'C:\\Python27…
python的搜索路径其实是一个列表,它是指导入模块时,python会自动去找搜索这个列表当中的路径,如果路径中存在要导入的模块文件则导入成功,否则导入失败: >>> import sys >>> sys.path ['', 'C:\\Python33\\Lib\\idlelib', 'C:\\Windows\\system32\\python33.zip', 'C:\\Python33\\DLLs', 'C:\\Python33\\lib', 'C:\\Python3…
day16 循环导入.模块搜索路径.软件开发.包的使用 1.循环导入 循环导入:循环导入问题指的是在一个模块加载/导入的过程中导入另外一个模块,而在另外一个模块中又返回来导入第一个模块中的名字,由于第一个模块尚未加载完毕,所以引用失败.抛出异常,究其根源就是在python中,同一个模块只会在第一次导入时执行其内部代码,再次导入该模块时,即便是该模块尚未完全加载完毕也不会去重复执行内部代码 解决方案一: # 文件:m1.py print('正在导入m1') # 把代码放在导入上边,让它先加入内存中…
出处:http://blog.csdn.net/kernelspirit/article/details/3381666 最近在看<Python源码剖析>,对Python内部运行机制比以前了解的更深入了,感觉自己有机会也可以做个小型的动态脚本语言了,呵呵,当然是吹牛了.目的当然不是创造一个动态语言,目的只有一个:更好的使用Python.看到模块导入那块的时候,终于对模块导入机制比较了解了,以防忘记特记录下来. 模块的搜索路径 模块的搜索路径都放在了sys.path列表中,如果缺省的sys.pa…
win10系统 依次点击:控制面板\系统和安全\系统\高级系统设置\环境变量   找不到的话,直接在设置中搜索  环境变量  也一样 此时上面是用户变量 下面是系统变量   在系统变量中找到PYTHONPATH这个变量(如果没有就新建一个PYTHONPATH变量),在它的变量值中加入你要添加的模块的路径即可,路径之间用分号;分割 参考:http://blog.sina.com.cn/s/blog_9b1b494a0102vrl3.html…
在编写Python程序时候命名在IDE中运行正常可是到了服务器上就出现各种问题,经常发生的就是如下的错误: ImportError: No module named 'hello' 这个错误我相信大家都不陌生学习初期都会遇到尤其是你引入第三方模块(从网上下载的或者是你自己写的)的时候可能会发生.那是为什么呢?在Python中这些东西叫做模块,可是在系统中其实就是目录,既然你要使用这些模块也就是目录里面的内容那么Python解释器肯定要能找到才行,其实就跟系统中的环境变量一样,编译安装程序的时候经…
import搜索路径 在当前目录下搜索该模块 在环境变量 PYTHONPATH 中指定的路径列表中依次搜索 在 Python 安装路径的 lib 库中搜索 查看当前的搜索路径 import sys print(sys.path) 临时添加搜索路径 sys.path.append() # 方式1 sys.path.insert() # 方式2 export PYTHONPATH = $PYTHONPATH:/home/ershisui # 方式3 永久添加搜索路径 添加系统环境变量PYTHONPA…
# 切记不能与方法函数同名,否则会报错!!! # python的模块与包 分为三种: #1.标准库 #2.第三方模块 #3.自定义模块 #python 模块的引入原理: # 加入你创建了一个模块,在import模块之后,python会将该模块当中的内容解释一遍后重新赋值给该模块对象 # 所以你在使用的时候可以直接调用该模块对象来处理 #你要考虑,如果这个模块里面的内容很多,而你只需要使用一部分内容,考虑到效率问题,该怎么去提高效率呢? # 使用from 关键字 #from 模块名 import…
Unix(Linux): prefix/lib/pythonX.Y/site-packages 默认路径:/usr/local/lib/pythonX.Y/site-packages 另外,在Unix-like系统上,Python自身build-in的模块一般位于:/usr/lib/pythonX.Y/site-packages从源代码安装模块的命令一般为:setup.py install当然,可以根据需要改变默认的第三方模块安装路径,在命令中可以加上参数:–user, or –home, or…
方法一:函数添加1 import sys2 查看sys.path3 添加sys.path.append("c:\\") 方法二:修改环境变量w用户可以修改系统环境变量PYTHONPATH 方法三:增加.pth文件,推荐!在site-packages添加一个路径文件,如mypkpath.pth,必须以.pth为后缀,写上你要加入的模块文件所在的目录名称就是了. 1 windows    c:\python27\site-packages# 我们的学员把pth文件直接放在c:\python…
方法一:函数添加1 import sys2 查看sys.path3 添加sys.path.append("c:\\") 方法二:修改环境变量w用户可以修改系统环境变量PYTHONPATH 方法三:增加.pth文件,推荐!在site-packages添加一个路径文件,如mypkpath.pth,必须以.pth为后缀,写上你要加入的模块文件所在的目录名称就是了. 1 windows    c:\python27\site-packages# 我们的学员把pth文件直接放在c:\python…
在调用MySQL第三方工具mysqlrplsync是报错 mysqlrplsync --master=checksum:checksum@master_ip:3306 --slave=checksum:checksum@slave_ip:3306  --checksum-timeout=10 --verbose Traceback (most recent call last): File "/usr/bin/mysqlrplsync", line 25, in <module&…
1.Python中导入模块:import sys:相当于Java中的导入包.类. 比如,我们导入sys模块,使用:import sys; 2.Python中调用函数的时候,会从默认配置的库文件夹中(sys.path)搜索你所调用的模块.这个库文件的目录配置,如下: sys.path用来配置Python模块搜索路径.它是一个List(列表),打印默认sys.path的内容: Python 3.3.5 (v3.3.5:62cf4e77f785, Mar  9 2014, 10:37:12) [MSC…
但我们通过 import 或者frome .. import...查找模块的时候,当你导入一个模块,Python 解析器对模块位置的搜索顺序是 1.当前目录 2, 如果不在当前目录,Python 则搜索在 shell 变量 PYTHONPATH 下的每个目录 set PYTHONPATH=c:\python27\lib; set PYTHONPATH=/usr/local/lib/python 3,如果都找不到,Python会察看默认路径.UNIX下,默认路径一般为/usr/local/lib/…
python模块导入细节 官方手册:https://docs.python.org/3/tutorial/modules.html 可执行文件和模块 python源代码文件按照功能可以分为两种类型: 用于执行的可执行程序文件 不用与执行,仅用于被其它python源码文件导入的模块文件 例如文件a.py和b.py在同一目录下,它们的内容分别是: # b.py x="var x in module b" y=5 # a.py: import b import sys print(b.x)…
[转]python模块导入细节 python模块导入细节 官方手册:https://docs.python.org/3/tutorial/modules.html 可执行文件和模块 python源代码文件按照功能可以分为两种类型: 用于执行的可执行程序文件 不用与执行,仅用于被其它python源码文件导入的模块文件 例如文件a.py和b.py在同一目录下,它们的内容分别是: # b.py x="var x in module b" y=5 # a.py: import b import…
官方手册:https://docs.python.org/3/tutorial/modules.html 可执行文件和模块 python源代码文件按照功能可以分为两种类型: 用于执行的可执行程序文件 不用与执行,仅用于被其它python源码文件导入的模块文件 例如文件a.py和b.py在同一目录下,它们的内容分别是: a.py导入其它文件(b.py)后,就可以使用b.py文件中的属性(如变量.函数等).这里,a.py就是可执行文件,b.py就是模块文件,但模块名为b,而非b.py. python…
区分Python文件的两种用途 run.py文件: import m1 m1.py文件: def f1(): print('f1') def f2(): print('f2') #当文件被执行时__name__=='__main__' #当文件被导入时__name__=='模块名' # print(__name__) # if __name__ == '__main__': #     f1() #     f2() 模块的搜索路径 1.模块搜索路径的优先级 1.1 内存中已经加载过的 1.2…
如果我们要添加自己的搜索目录,有两种方法: 一是直接修改sys.path,添加要搜索的目录: >>> import sys >>> sys.path.append('C:\PYTHON\TMP\') 这种方法是在运行时修改,运行结束后失效(临时有效). 第二种方法是设置环境变量PYTHONPATH,该环境变量的内容会被自动添加到模块搜索路径中.设置方式与设置Path环境变量类似.注意只需要添加你自己的搜索路径,Python自己本身的搜索路径不受影响. 在Python中,…