模块

模块的概念

  模块是Python程序架构的一个核心概念

。每一个以扩展名.py结尾的Python源代码文件都是一个模块

。模块名同样也是一个标识符,需要符合标识符的命名规则

。在模块中定义的全局变量、函数、类都是提供给外界直接使用的工具

。模块就好比是工具包,要想使用工具包中的工具,就需要先导入这个模块

 

模块的导入

import导入

示例:

import 模块1
import 模块2

 

提示:在导入模块是,每个导入应该独占一行

导入之后,通过模块名.使用模块提供的工具——全局变量、函数、类

使用as指定模块的别名

  如果模块的名字太长,可以使用as指定模块的名称,以方便在代码中的使用

import 模块1 as 模块别名

 

form...import导入

。如果希望从某一个模块中,导入部分工具,就可以使用from...import的方式

。import模块名是一次性把模块中的所有工具全部导入,并且通过模块名/别名访问

示例:

from 模块1 import 工具名

导入之后,不需要通过,模块名.可以直接使用模块提供的工具——全局变量、函数、类

注意:

  如果两个模块,存在同名的函数,那么后导入的模块的函数,会覆盖掉先导入的函数

。开发时import代码应该统一写在代码的顶部,更容易及时发现冲突

。一旦发现冲突,可以使用as关键字给其中一个工具起一个别名

 

from...import *

# 从模块导入所有工具
from 模块名1 import *

注意

  这种方式不推荐使用,因为函数重名并没有任何提示,出现问题不好排查

 

模块的搜索顺序

Python的解释器在导入模块时,会:

1.搜索当前目录制定模块名的文件,如果有就直接导入

2.如果没有,再搜索系统目录

  在开发时,给文件起名,不要和系统的模块文件重名

Python中每个模块都有一个内置属性__file__可以查看模块的完整路径

 

原则——每一个文件都应该是可以被导入的

。一个独立的Python文件就是一个模块

。在导入文件时,文件中所有没有任何缩进的代码都会被执行一遍

 

__name__属性

  。name属性可以做到,测试模块的代码只在测试情况下被运行,而在被导入时不会被执行

。name是Python的一个内置属性,记录着一个字符串

。如果是被其他文件导入的,name就是模块名

。如果是当前执行的程序name是main

示例:

def main():
    pass

if __name__ == "__main__"
    main()

 

转载于:https://www.cnblogs.com/MammothManny/p/8666431.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值