Python学习之路——模块

发布时间:2024年01月20日

一、什么是模块

python模块(Module)是一个Python文件,以.py结尾。模块能定义函数变量,模块里也能包含可执行的代码。

二、模块的作用

Python中有很多各种不同的模块,每一个模块都可以帮助我们实现一些功能,比如实现和时间相关的功能就可以使用time模块,我们可以认为一个模块就是一个工具包,每一个工具包中都有各种不同的工具供我们使用,进而实现不同的功能。

三、导入Python内置的模块

模块在使用前需要先导入

模块的导入方式

[from 模块名] import [模块 | 类 | 变量 | 函数 | *] [as 别名]

  1. import 模块名
  2. from 模块名 import 功能名 (类、函数、变量等)
  3. from 模块名 import *
  4. import 模块名 as 别名
  5. from 模块名 import 功能名 as 别名

下面一一进行演示

(一)import 模块名

# 导入时间模块
import time

print('让程序进入睡眠状态,开始')
time.sleep(1)
print('睡眠状态结束')

(二)from 模块名 import 功能名 (类、函数、变量等)

# 导入时间模块中的sleep方法
from time import sleep

print('程序睡眠开始')
sleep(1)
print('程序睡眠结束')

(三)from 模块名 import *

# 利用 * 可以将模块内部的全部函数全部导入进来
from time import *
# 获取时间戳
print(time())
# 程序睡眠
sleep(1)

(四)import 模块名 as 别名

# 比较有意思的玩法
import time as tm

tm.sleep(1)
print(tm.time())

(五)from 模块名 import 功能名 as 别名

# 给模块的方法起别名
from time import sleep as s
print('1')
s(1)
print('1')

四、自定义模块的使用

1、注意

当导入多个模块的时候,且模块内有同名函数,当调用这个同名函数的时候,调用到的是后面导入的模块的函数

2、演示

(一)创建如下三个文件

(二)test01内部写入以下代码:

def func(a, b):
    c = a + b
    print(f'我是test01模块内的函数\n运算的结果为:{c}')

(三)test02内部写入以下代码:

def func(a, b):
    c = a * b
    print(f'我是test02模块内的函数\n运算的结果为:{c}')

(四)在main函数内部写入以下代码:

from test01 import func
from test02 import func

if __name__ == '__main__':
    func(10, 20)

(五)运行结果:

很明显意料之中!!

3、另外

之前一直使用的

if __name__ == '__main__':

解释一下:

只有当程序是直接执行的才会进入if内部,如果是被导入的(即在另外一个文件里面调用该文件),则if无法进入

4、__all__

如果一个模块文件中有__all__变量,当使用from xxx import *导入时,只能导入这个列表中的元素

(一)利用上面创建的两个test文件和main进行演示

在test01文件中写入以下代码:

__all__ = ['func01']


def func01(a, b):
    c = a + b
    print(f'我是将两个变量进行相加的函数\n运算的结果为:{c}')


def func02(a, b):
    c = a * b
    print(f'我是将两个变量进行相乘的函数\n运算的结果为:{c}')

那么在main函数中就只能写入以下代码:

from test01 import func01

if __name__ == '__main__':
    func01(10, 20)
文章来源:https://blog.csdn.net/weixin_57154777/article/details/135719970
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。