模块,作用域,第三方模块
模块
- Python内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用
作用域
- 但有的函数和变量我们希望给别人使用,有的函数和变量我们希望仅仅在模块内部使用。在Python中,是通过
_
前缀来实现的- 正常的函数和变量名是公开的(public),可以被直接引用
- 类似
__xxx__
这样的变量是特殊变量,可以被直接引用,但是有特殊用途,比如__author__
,__name__
就是特殊变量,自己的变量一般不用这种变量名 - 类似
_xxx
和__xxx
这样的函数或变量就是非公开的(private),不应该被直接引用,比如_abc
,__abc
等
- private函数和变量**“不应该”被直接引用,而不是“不能”**被直接引用,是因为Python并没有一种方法可以完全限制访问private函数或变量
- 外部不需要引用的函数全部定义成private,只有外部需要引用的函数才定义为public
第三方模块
-
在Python中,安装第三方模块,是通过包管理工具pip完成的
pip install numpy
-
第三方库:pypi.python.org网站注册
-
默认情况下,Python解释器会搜索当前目录、所有已安装的内置模块和第三方模块,搜索路径存放在
sys
模块的path
变量中import sys print(sys.path) # 结果 ['G:\\PycharmProject\\seleniumTest', 'G:\\PycharmProject\\seleniumTest', 'C:\\ProgramData\\Anaconda3\\python36.zip', 'C:\\ProgramData\\Anaconda3\\DLLs', 'C:\\ProgramData\\Anaconda3\\lib', 'C:\\ProgramData\\Anaconda3', 'C:\\ProgramData\\Anaconda3\\lib\\site-packages', 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32', 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32\\lib', 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\Pythonwin']
要添加自己的搜索目录,有两种方法:
-
方式一:直接修改
sys.path
,添加要搜索的目录import sys sys.path.append('/Users/my_py_scripts')
这种方法是在运行时修改,运行结束后失效
-
方式二:设置环境变量
PYTHONPATH
,该环境变量的内容会被自动添加到模块搜索路径中注意只需要添加你自己的搜索路径,Python自己本身的搜索路径不受影响。
-