2020-11-19

模块是一系列常用功能的集合体,一个py文件就是一个模块。

一、模块的作用:
1、从文件级别组织程序,方便管理,随着程序的发展,功能越来越多,我们通常将程序分成一个个py文件,这样做程序的结构更清晰,方便管理。这时我们不仅可以把这些文件当做脚本去执行,还可以把他们当做模块来导入到其他的模块中,实现了功能的重复利用。
2、拿来主义,提升开发效率
同样的原理,我们也可以下载别人写好的模块然后导入到自己的项目中使用,这种拿来主义,可以极大地提升我们的开发效率,避免重复造轮子。每个模块都是一个独立的名称空间,定义在这个模块中的函数,把这个模块的名称空间当做全局名称空间,这样我们在编写自己的模块时,就不用担心我们定义在自己模块中全局变量会在被导入时,与使用者的全局变量冲突。
二、导入模块:
import 模块1,模块2,模块3
可以用import以逗号分隔的方式导入多个模块,但是为了代码的可读性不建议这么写,建议分开写。如:
import 模块1
import 模块2
import 模块3
多行导入,易于阅读,易于编辑,易于搜索,易于维护。
import 导入过来的功能都需要使用模块点的方法执行。如下:
import time
print(time.localtime()) # 以模块名time.locatime()的方式调用
import 模块名 as 别名 为模块起别名,如下:
import time as datetime_ # 为模块起别名
print(datetime_.localtime())
import 导入的是整个模块,当我们知道要导入这个模块的某个功能时,我们可以直接导入该模块下的某个功能,而不需要将该模块下的所有功能全部导入。
这时我们可以使用:from 模块名 import 函数名这样就可以导出该模块下的函数了,而不用导入整个模块。如下:
from time import localtime # 导出time模块下的localtime函数
print(localtime()) # 这样就不需要使用模块名.的方式调用函数了
from 模块 import 函数1,函数2,函数3 #也可以导入多个函数,如下:
from time import localtime,strftime,time # 导出time模块下的多个函数
ntime = localtime(time())
print(strftime("%Y-%m-%d %H:%M:%S",ntime))
from 模块名 import 函数名 as 别名:函数名 as 别名 可以更改多个。
from time import localtime as localtime_,time as time_ # 起别名
print(localtime_(time_()))
from 模块名 import * 导出模块下所有函数,不推荐使用。
from time import * # 导出time模块下的所有函数
print(localtime(time()))
小结:以time模块为例。
1、import time 可以导出time模块下的所有函数,在使用这些函数时需要使用 time.函数名 的方式来调用函数。
from time import * 导出time模块下的所有函数,直接使用函数名的方式来调用,不使用模块名.函数名的方式调用。
三、模块的搜索顺序:
内存中已经加载的模块 - > 内置模块 - > sys.path路径中包含的模块。
下面是打印当前Python环境下的路径:
import sys
print(sys.path) # 打印当前python环境变量
如果要添加其它盘符中的模块,需要把模块的路径加载到Python的环境中去。
import sys
sys.path.insert(0,r"模块路径") # 将一个模块路径插入到当前Python环境变量
print(sys.path) # 打印当前python环境变量

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值