python进阶教程之模块(module)介绍

作者:junjie 时间:2021-06-16 12:52:07 

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

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

引入模块

我们先写一个first.py文件,内容如下:


def laugh():
    print 'HaHaHaHa'

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


import first

for i in range(10):
    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 import *           # 从模块a中引入所有对象。调用a中对象时,我们不用再说明模块,即直接使用对象,而不是a.对象。

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

搜索路径

Python会在以下路径中搜索它想要寻找的模块:

程序所在的文件夹
标准库的安装路径
操作系统环境变量PYTHONPATH所包含的路径

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

模块包

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


import this_dir.module


引入this_dir文件夹中的module模块。

该文件夹中必须包含一个__init__.py的文件,提醒Python,该文件夹为一个模块包。__init__.py可以是一个空文件。

总结

import module

module.object

__init__.py

标签:python,进阶教程,模块,module
0
投稿

猜你喜欢

  • JS中如何实现点击a标签返回页面顶部的问题

    2024-04-19 10:14:19
  • 五个简单有效的Python清理数据脚本分享

    2021-11-01 08:08:50
  • Python实现排序方法常见的四种

    2022-02-18 08:06:15
  • 关于Python中 循环器 itertools的介绍

    2023-11-23 02:48:21
  • 如何使用python wasmtime调用rust生成的wasm库

    2023-11-26 23:58:38
  • Web设计师的出路问题

    2009-06-08 13:07:00
  • 使用Tkinter制作信息提示框

    2023-12-15 02:13:30
  • Python模拟键盘输入自动登录TGP

    2021-11-04 11:27:22
  • Python中re模块:匹配开头/结尾(^/$)

    2021-08-31 02:29:13
  • Python中的id()函数指的什么

    2022-01-14 12:38:04
  • Python面向对象程序设计类变量与成员变量、类方法与成员方法用法分析

    2022-08-11 15:43:43
  • python爬虫中抓取指数的实例讲解

    2022-02-18 04:59:58
  • js实现点击后将文字或图片复制到剪贴板的方法

    2024-04-30 09:51:07
  • Vuex之理解Store的用法

    2024-05-13 09:37:33
  • django form和field具体方法和属性说明

    2023-07-24 11:22:45
  • python读取图片并修改格式与大小的方法

    2021-05-13 09:13:25
  • 详解tensorflow之过拟合问题实战

    2022-08-13 00:46:30
  • OpenCV黑帽运算(BLACKHAT)的使用

    2022-11-11 22:32:00
  • 一台电脑(windows系统)安装两个版本MYSQL方法步骤

    2024-01-19 18:22:21
  • 使用MySQL的geometry类型处理经纬度距离问题的方法

    2024-01-21 15:44:06
  • asp之家 网络编程 m.aspxhome.com