Python模块
2018-09-29 03:59:08来源:博客园 阅读 ()
note:
一:简介
从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了。
为此 Python 提供了一个办法,把这些定义存放在文件中,
为一些脚本或者交互式的解释器实例使 用,这个文件被称为模块。
模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。
模块可以被别的程序引入,以使用该模块中的函数等功能。
这也是使用 python 标准库的方法。
模块中创建私有属性和方法,将不会被其他模块导入。除非添加__all__ = [变量, 值]
二:模块的导入方法
(1)import module
没有把直接定义在module中的函数名称写入到当前符号表里,只是把模块的名字写到了那里
用模块名来访问函数.
常用函数赋一个别名:myName = module.funcName
(2)from … import 语句
不会把整个fibo模块导入到当前的命名空间。
(3)from … import *
把一个模块的所有内容全都导入到当前的命名空间也是可行的。
(4)模块使用方法:dir()---->help()----->print(module.__doc__)
print(module.__file__)阅读源码
三:模块深入学习
(1)模块除了方法定义,还可以包括可执行的代码。这些代码一般用来初始化这个模块。
这些代码只有在第一次被导入时才会被执行。
每个模块有各自独立的符号表,在模块内部为所有的函数当作全局符号表来使用
(2)模块搜索路径
首先,Python 会在内建模块中搜寻 foobar;
若未找到,则 Python 会在当前工作路径(当前脚本所在路径,或者执行 Python 解释器的路径)
中搜寻 foobar;
若仍未找到,则 Python 会在环境变量 PYTHONPATH 中指示的路径中搜寻 foobar;
若依旧未能找到,则 Python 会在安装时指定的路径中搜寻 foobar;
若仍旧失败,则 Python 会报错,提示找不到 foobar 这个模块
五:__name__属性
if __name__ == '__main__':
print('程序自身在运行')
else:
print('我来自另一模块')
dir()函数查看模块中所有的方法和属性
六:包
Python 允许用户把目录当成模块看待。
这样一来,目录中的不同模块文件,就变成了「包」里面的子模块。
包目录下还可以有子目录,这些子目录也可以是 Python 包。
这种分层,对模块识别、管理,都是非常有好处的。
特别地,对于一些大型 Python 工具包,内里可能有成百上千个不同功能的模块。
若是逐个模块发布,那简直成了灾难。
七:包的目录结构
(1)要求每一个「包」目录下,都必须有一个名为 __init__.py 的文件
__init__.py 中可以保留一些初始化的代码——比如引入依赖的其他 Python 模块。
(2)https://liam0205.me/2017/07/23/modules-and-packages-of-python/参考文章
八:包的调用
同模块的调用!
九:源码和帮助文档的使用
dir()
help()
.__file__存放源码的路径
1 # 熟悉几种导入模块的方法 2 3 4 def func_1(func_name, *numbers): 5 print(func_name, numbers) 6 return 'Done' 7 8 9 money = 200 # 模块里面的全局变量 10 11 12 def add_money(): 13 global money 14 money = money + 1 15 return money
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:Python基础(上)
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash