前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python——模块

Python——模块

作者头像
zy010101
发布2021-04-08 10:12:19
2920
发布2021-04-08 10:12:19
举报
文章被收录于专栏:程序员

Python中使用import机制来引入模块,和C语言的头文件是类似的,不过没有头文件那么多的注意事项。import机制相对而言是更加合理的。

将函数存储在称为模块的独立文件中,再将模块导入到主程序中。import 语句允许在当前运行的程序文件中使用模块中的代码。一个简单的例子如下所示,首先在同一个目录下创建两个文件,分别是main.py和Hello.py。然后分别写上如下内容。

代码语言:javascript
复制
# Hello.py
def Hello():
    print("Hello World!")
代码语言:javascript
复制
# main.py
import Hello        # 导入整个模块


Hello.Hello()

执行main.py文件,即可看到Hello.py中的Hello函数被调用。结果如下所示:

Python 读取这个文件时,代码行 import Hello让 Python 打开文件 Hello.py,并将其中的所有函数都复制到这个程序中。你看不到复制的代码,因为在这个程序即将运行时,Python 在幕后复制了这些代码。

然后,你使用modulename.functionname()就可以使用相关函数了。这点是非常方便的。当然了,有时候你并不想导入某个模块的所有功能,那么可以使用下面的方式来导入你想使用的函数。例如:

代码语言:javascript
复制
# Hello.py
def Hello():
    print("Hello World!")


def NoHello():
    print("???")


def Hi():
    print("Hi")
代码语言:javascript
复制
# main.py
from Hello import NoHello, Hello    # 导入Hello模块的NoHello函数和Hello函数

Hello()
NoHello()

执行main.py之后,结果如下所示:

使用from module import function导入之后,就可以用函数名来使用函数,不需要使用module.function的方式了。考虑到如下情形:“如果要导入函数的名称可能与程序中现有的名称冲突,或者函数的名称太长,可指定简短而独一无二的别名:函数的另一个名称,类似于外号。要给函数取这种特殊外号,需要在导入它时指定”。如下所示:

代码语言:javascript
复制
from Hello import Hello as HO       # 将导入的Hello函数起别名为HO


HO()

使用HO即可调用Hello模块中的Hello函数。执行结果如下所示:

既然可以给模块内的函数指定别名,其实也可以给模块指定别名。如下所示:

代码语言:javascript
复制
import Hello as H       # 将导入的模块Hello起别名为H


H.Hi()

有的时候,我们为了方便,不想写模块名(即使是起了简短别名),想直接使用函数名来调用函数。Python也提供了这样的导入语法,使用*号即可。如下所示:

代码语言:javascript
复制
from Hello import *     # 导入Hello模块的所有函数


Hello()
NoHello()
Hi()

程序执行结果如下所示:

但是这种方式仅限于你自己写的小型模块,而不适用于所有模块。

最后需要说明的是,所有import语句都应当放在文件开始处,而不是哪里用,在哪里import。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/03/29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档