Python第二语言(七、Python模块)

目录

[1. 什么是模块](#1. 什么是模块)

[2. 基本语法](#2. 基本语法)

[2.1 模块的导入方式](#2.1 模块的导入方式)

[2.2 基本语法 import 模块名](#2.2 基本语法 import 模块名)

[2.3 基本语法 from 模块名 import 功能名](#2.3 基本语法 from 模块名 import 功能名)

[2.4 基本语法as 别名](#2.4 基本语法as 别名)

[3. 自定义模块](#3. 自定义模块)

[4. 调用自定义模块时,如何让其模块中的函数不被调用(name)](#4. 调用自定义模块时,如何让其模块中的函数不被调用(name))

[5. 调用自定义模块时只取定义的函数(all)](#5. 调用自定义模块时只取定义的函数(all))


1. 什么是模块

  1. Python 模块(Module),是一个 Python 文件,以.py 结尾;
  2. 模块的作用:python中有很多各种不同的模块,每一个模块都可以帮助我们快速的实现一些功能,比如实现和时间相关的功能就可模以使用time块我们可以认为一个模块就是一个工具包,每一个工具包中都有各种不同的工具供我们使用进而实现各种不同的功能;

2. 基本语法

2.1 模块的导入方式

常用的组合形式如:

  1. import 模块名**;**
  2. from 模块名 import 类、变量、方法等from 模块名 import *;
  3. import 模块名 as别名;
  4. from模块名import功能名as 别名;
python 复制代码
[from 模块名] import [模块 | 类 | 变量 | 函数 | *] [as 别名] 
2.2 基本语法 import 模块名

基本语法:

python 复制代码
# 基本语法
import 模块名
import 模块名1, 模块名2

模块名.功能名()

案例:

python 复制代码
# 导入模块
import time

print("开始")
time.sleep(1)  # 使程序睡眠1秒
print("结束")
2.3 基本语法 from 模块名 import 功能名
python 复制代码
# from 模块名 import功能名
# 功能名()

from time import sleep
print("开始")
sleep(1)
print("结束")
2.4 基本语法as 别名
python 复制代码
# 模块定义别名

import 模块名 as 别名

# 功能定义别名
from 模块名 import 功能 as 别名
python 复制代码
# 案例
import time as im

im.time(2)

from time import sleep as sp

sp(2)

3. 自定义模块

Python中有很多已经实现的模块,不过有时候需要我们定义个性化的模块:

4. 调用自定义模块时,如何让其模块中的函数不被调用(name

  • Python中ifname== 'main':的作用和原理_python if-CSDN博客
  • 这个if的作用是:__name__这是python自带的不用管,'main '会把下面这个函数取一个叫做'main'的名字,当等于这个名字的时候才会执行。防止被调用整个模块的时候把当前的函数也调用了。
  • if name == "main ": 这句话就是作为一个条件限制吧,这句话以下的代码只有在运行的这个.py文件的时候才会执行 ,当作为模块在别的.py文件中调用的时候本.py文件中这句话下面的代码不会执行
python 复制代码
def test(a, b):
    print(a + b)


# '__main__'会把下面这个函数取一个叫做'__main__'的名字,
# 当等于这个名字的时候才会执行,防止被调用整个模块的时候把当前的函数也调用了;
if __name__ == '__main__':
    test(1, 2)

5. 调用自定义模块时只取定义的函数(all

python 复制代码
# 如果模块文件有__all__变量,当使用from xxx import * 导入时,只能导入这个列表中的元素
__all__ = ['test_a']


def test_a():
    print('testA')


def test_b():
    print('testB')
python 复制代码
from test import *

# 只可调用test_a
test_a()
相关推荐
q567315236 分钟前
IBM官网新闻爬虫代码示例
开发语言·分布式·爬虫
DanCheng-studio8 分钟前
毕设 基于机器视觉的驾驶疲劳检测系统(源码+论文)
python·毕业设计·毕设
carpell10 分钟前
【语义分割专栏】3:Segnet实战篇(附上完整可运行的代码pytorch)
人工智能·python·深度学习·计算机视觉·语义分割
笨笨马甲12 分钟前
附加模块--Qt OpenGL模块功能及架构
开发语言·qt
一只小波波呀1 小时前
打卡第48天
python
钮钴禄·爱因斯晨1 小时前
Java 面向对象进阶之多态:从概念到实践的深度解析
java·开发语言·数据结构
zstar-_1 小时前
一套个人知识储备库构建方案
python
鸽子炖汤1 小时前
Java中==和equals的区别
java·开发语言·jvm
有个傻瓜1 小时前
PHP语言核心技术全景解析
开发语言·kubernetes·php
Amo Xiang2 小时前
《100天精通Python——基础篇 2025 第5天:巩固核心知识,选择题实战演练基础语法》
python·选择题·基础语法