Python-Task12 模块
学习内容
廖雪峰老师python教程https://www.liaoxuefeng.com/wiki/1016959663602400
模块就是一组python代码的集合。.py文件就是一个模块module。
采用模块机制提高了代码的可维护性,我们可以调用丰富的第三方库编写自己的程序。
并且模块机制可以避免函数名和变量名的冲突,要注意的是自己写模块时候不要和内置函数名冲突!
当然了,模块名字也有可能冲突,这是我们就采用包来住址模块,避免冲突。可以有多层目录。
mycompany #每一个包目录下面都会有一个__init__.py的文件
├─ web
│ ├─ __init__.py
│ ├─ utils.py
│ └─ www.py
├─ __init__.py
├─ abc.py
└─ utils.py
文件www.py
的模块名就是mycompany.web.www
查看系统中是否有某个模块名可以用 import abc在交互窗口测试。
# -*- coding: utf-8 -*-
__author__='wenjunjie' #作者名
'a test module' #模块注释
import sys #导入sys模块 并且sys是个变量
def test():
args=sys.argv
if len(args)==1:
print("Hello world!")
elif len(args)==2:
print('hello,%s' % args[1])
else:
print('Too much argument!')
if __name__ =='__main__':
test()
if __name__ =='__main__':
当我们在运行该模块文件时,python解释器会吧特殊变量__name__
赋值为__main__
,条件体内的内容在其他地方调用该模块时不会起作用。
作用域
正常的变量名、函数名是public的,可以被直接引用。abc、x123。
__author__
是特殊变量,可以被直接引用,但有特殊用途。
_xxx和__xxx的函数或变量是非公开的,不应该直接引用。
使用非公开的函数也是一种有用的代码封装和抽象的方法。外部不需要的引用的函数定义为private,外部需要引用的函数定义为public
安装第三方库
首先要确认电脑安装了pip 。可以再pypi.python.org查看第三方库。安装第三方库需要知道该库名字。例如:Pillow,运行安装命令
pip install Pillow
Anaconda整合了很多优秀的第三方库,一次安装省去很多麻烦。
搜索路径
我们导入包时候,python解释器需要按照指定路径下搜索.py文件。
搜索的路径存放在 sys模块中的path变量中。
1.添加搜索路径可以用append()方法。
2.也可以通过设置环境变量添加。