Python语言功能非常强大,除了类之外,还有模块和包的概念,这有点像perl,此处简单说说包和模块。
一、Python中的模块
模块——其实就是我们说的库(lib)的概念,不过它不仅只是可以包含一系列函数,也可以包含类,python里是没有像C语言之类,直接include某文件的,包正是这种类似的东西。
Python 引入模块的方法有两种:
1、import 模块名(实际是对应的就是 文件名.py )
2、模块名 = __import__("模块文件名(不带扩展名)")
也可以" import 模块名 as 别名 "这样用
例如:
代码如下:
test.py
# -*- coding: gb18030 -*-
#引入模块
import test_mod
#调用模块里的函数
test_mod.my_func()
#调用模块里的类
tc = test_mod.test_cls()
tc.test_func()
test_mod.py源码如下:
# -*- coding: gb18030 -*-
def my_func():
print 'I am a function in the module! '
class test_cls:
def test_func(self):
print 'I am a mothod in the class! '
调用模块里的函数或类一定要用 “模块名.类名|函数名” 的方式。
正是因为这种特性,python里很多 os.xx 、 sys.xx 之类的语法,但它不一定是对象(对象和非对象之间显得极混乱,或者可以认为模块也是一个对象吧,只是比较特殊),这是python语言的一个严重的缺点,不过当你习惯这些的时候,就比较容易读懂python的脚本了。
sys 和 os 是 python 里最常用的模块,需要了解一下它们。
二、Python中的包
包实际上就是对一系列模块的封装,以防止模块名之间发生冲突,对于一个标准的python程序,通常的结构为:
使用模板与程序分离的方式构建,依靠专门设计的数据库操作类实现数据库存取,具有专有错误处理模块,通过 Email 实时报告数据库错误,除具有满足购物需要的全部功能外,成新商城购物系统还对购物系统体系做了丰富的扩展,全新设计的搜索功能,自定义成新商城购物系统代码功能代码已经全面优化,杜绝SQL注入漏洞前台测试用户名:admin密码:admin888后台管理员名:admin密码:admin888
0
代码如下:
app.py
appname
__init__.py
son_pack1
__init__.py
son_mod_1_1.py
son_mod_1_2.py
son_pack2
__init__.py
son_mod_2_1.py
son_mod_2_2.py
son_mod_1.py
.......
在有__version__、__all__、__path__ 三个特殊变量,可以指定,也可以让这文件为空。
调用包里的类或函数的方法是:
包名.子包名.类名|函数名
这实际上就相当于C++或C#里的名字空间。
在调用包时,需要注册目录和具体模块的调用方法
如,要调用 son_mod_1_1.py
那么就是:
代码如下:
appname.son_pack1.son_mod_1_1
此外还有一种方法是用 form 关键字,方法为:
代码如下:
from appname.son_pack1 import son_mod_1_1
如果要喜引入 appname.son_pack1 里的所有模块,那么为:
代码如下:
from appname.son_pack1 import *
对于使用 import * 的情况,必须在 __init__.py 中用 __all__ 指明,如:
代码如下:
__all__ = ["son_mod_1_1", "son_mod_1_2"]
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号