python模块开发的使用
2018-05-31 本文已影响0人
小船翻不翻

模块
一个.py文件就称之为一个模块(Module)。
- 一个模块可以包含多个函数
- 提高了代码的可维护性
- 代码的复用性,不必从零开始
- 避免相同名字的函数和变量冲突
- 模块名称尽量不要与内置函数名称冲突
mycompany
├─ web
│ ├─ __init__.py
│ ├─ utils.py
│ └─ www.py
├─ __init__.py
├─ abc.py
├─ utils.py
└─ xyz.py
按照目录的组织方式来创建模块,称为包(Package)。 - 每一层目录中都要包含__init__.py模块文件,否则会被当成普通目录而不是一个包
- __init__.py可以是一个空文件也可以是python代码,它的模块名称是它的文件夹名称
通过尝试引用模块,就可以判断出是否可以使用 模块名称了。
使用模块
固定的模块格式部分代码:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#这是文档注释字符串
' a test module '
#这是作者的名称
__author__ = 'Michael Liao'
#引入其他模块
import sys
def test():
args = sys.argv
print(args)
...
...
def xxx():
pass
...
...
#在命令行运行该模块时,判断是True
if __name__=='__main__':
test()
第1行和第2行是标准注释:
第1行注释可以让这个hello.py文件直接在Unix/Linux/Mac上运行;
第2行注释表示.py文件本身使用标准UTF-8编码。

作用域
Python并没有一种方法可以完全限制访问private函数或变量,顾约定了:
类似_xxx和__xxx这样的函数或变量就是非公开的(private),不应该被直接引用。
这让我想起了一句话:
MVC中的约定大于配置
模块中的文档注释信息可以通过__doc__ 来获得
>>>from mycompany import abc
>>>abc.\_\_doc\_\_
'a test module'
安装第三方模块库
推荐下载anaconda安装第三方库
2018-05-31
当前的版本Anaconda3-5.2.0-Windows-x86_64.exe
631MB
安装完成后,重新进入可以看到下面类似的界面:
C:\Users\admin> python
Python 3.6.3 |Anaconda, Inc.| ... on win32
Type "help", ... for more information.
>>> import numpy
>>> _