2.3Python进阶03 模块

我们之前看到了函数和对象。从本质上来说,它们都是为了更好的组织已经有的程序,以方便重复使用。

模块(module)也是为了同样的目的,在Python中,一个.py文件就构成一个模块。通过模块,你可以调用其它文件中的程序

引入模块

我们先写一个firest.py的问卷,内容如下:

def laugh():
    print 'HaHaHaHa'

再写一个second.py,并引入firsc中的程序:

import first

for i  in range():
    first.laugh()

在second.py中,我们使用了first.py中定义的laugh()函数。

引入模块后,可以通过模块.对象的方式来调用引入模块中的某个对象。上面例子中,first为引入的模块,laugh()是我们所引入的对象。
Python中还有其他的引入方式,

import a as b        # 引入模块a,并将模块a重命名为b
from a import function1        # 从模块a中引入function1对象。调用a中对象时,我们不用再说嘛模块,即直接使用function1,而不是a.function1。
from a impory *        # 从模块a中引入所有对象。调用a中对象时,我们不用再说嘛模块,即直接使用**对象**,而不是**a.对象**。

这些引用方式,可以方便后面的程序书写。

搜索路径

Python会在以下路径中搜索它想要寻找的模块:
1、程序所在的文件夹
2、标准库的安装路径
3、操作喜用环境变量PYTHONPATH所包含的路径

如果你有自定义的模块,或者下载的模块,可以根据情况放在相应的路径,以便Python可以找到。

模块包

可以将功能相似的模块放在同一个文件夹(比如是this_dir)中,构建一个模块包,通过

import this_dir.module

引入this_dir文件夹中的module模块。
该文件夹中必须包含一个**init.py的文件,提醒Python,该文件夹为一个模块包。init.py可以是一个空文件。

总结

import module
module.object
__init__.py
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • # Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列...
    aimaile阅读 26,579评论 6 427
  • 22年12月更新:个人网站关停,如果仍旧对旧教程有兴趣参考 Github 的markdown内容[https://...
    tangyefei阅读 35,231评论 22 257
  • GitHub 上有一个 Awesome - XXX 系列的资源整理,资源非常丰富,涉及面非常广。awesome-p...
    若与阅读 18,758评论 4 418
  • 环境管理管理Python版本和环境的工具。p–非常简单的交互式python版本管理工具。pyenv–简单的Pyth...
    MrHamster阅读 3,854评论 1 61
  • 开挂的人生 开挂是游戏里面的词语,形容很厉害的样子,进步神速,完全不可理解的地步,要是你拥有,那还得了。 开挂的人...
    啊貴阅读 161评论 0 0