python怎么导入模块

图片[1]-python怎么导入模块-uusu优素-乐高,模型,3d打印,编程

python中的模块即.py文件,模块的导入方式通常有两种:1是直接使用import语句导入;2是使用from..import..结构引入。

使用 import 导入模块的语法,但实际上 import 还有更多详细的用法,主要有以下两种:

import模块名1[as别名1],模块名2[as别名2],…:导入整个模块。
from模块名import成员名1[as别名1],成员名2[as别名2],…:导入模块中指定成员。

上面两种 import 语句的区别主要有以下几点:

第一种 import 语句导入整个模块内的所有成员(包括变量、函数、类等);第二种 import 语句只导入模块内的指定成员(除非使用 form 模块名 import *,但通常不推荐使用这种语法)。

当使用第一种 import 语句导入模块中的成员时,必须添加模块名或模块别名前缀;使用第二种 import 语句导入模块中的成员时,无须使用任何前缀,直接使用成员名或成员别名即可。

下面程序使用导入整个模块的最简单语法来导入指定模块:

#导入sys整个模块
importsys
#使用sys模块名作为前缀来访问模块中的成员
print(sys.argv[0])

上面第 2 行代码使用最简单的方式导入了 sys 模块,因此在程序中使用 sys 模块内的成员时,必须添加模块名作为前缀。

运行上面程序,可以看到如下输出结果(sys 模块下的 argv 变量用于获取运行 Python 程序的命令行参数,其中 argv[0] 用于获取该 Python 程序的程序名)。

importtest.py

在导入整个模块时可以为模块指定别名。例如如下程序:

#导入sys整个模块,并指定别名为s
importsysass
#使用s模块别名作为前缀来访问模块中的成员
print(s.argv[0])

第2行代码在导入 sys 模块时才指定了别名 s,因此在程序中使用 sys 模块内的成员时,必须添加模块别名 s 作为前缀。运行该程序,可以看到如下输出结果:

importtest2.py

使用导入整个模块的语法也可一次导入多个模块,多个模块之间用逗号隔开。例如如下程序:

#导入sys、os两个模块
importsys,os
#使用模块名作为前缀来访问模块中的成员
print(sys.argv[0])
#os模块的sep变量代表平台上的路径分隔符
print(os.sep)

上面第 2 行代码一次导入了 sys 和 os 两个模块,因此程序要使用 sys、os 两个模块内的成员,只要分别使用 sys、os 模块名作为前缀即可。在 Windows 平台上运行该程序,可以看到如下输出结果(os 模块的 sep 变量代表平台上的路径分隔符):

importtest3.py
\

同时,在导入多个模块时也可以为模块指定别名,例如如下程序:

#导入sys、os两个模块,并为sys指定别名s,为os指定别名o
importsysass,osaso
#使用模块别名作为前缀来访问模块中的成员
print(s.argv[0])
print(o.sep)

上面第 2 行代码一次导入了sys 和 os 两个模块,并分别为它们指定别名为 s、o,因此程序可以通过 s、o 两个前缀来使用 sys、os 两个模块内的成员。在 Windows 平台上运行该程序,可以看到如下输出结果:

import_test4.py
\

接下来介绍使用 from…import 导入模块内指定成员的用法。下面程序使用 from…import 导入模块成员的最简单语法来导入指定成员:

#导入sys模块的argv成员
fromsysimportargv
#使用导入成员的语法,直接使用成员名访问
print(argv[0])

第 2 行代码导入了 sys 模块中的 argv 成员,这样即可在程序中直接使用 argv 成员,无须使用任何前缀。运行该程序,可以看到如下输出结果:

fromimporttest.py

使用 from…import 导入模块成员时也可为成员指定别名,例如如下程序:

#导入sys模块的argv成员,并为其指定别名v
fromsysimportargvasv
#使用导入成员(并指定别名)的语法,直接使用成员的别名访问
print(v[0])

第 2 行代码导入了 sys 模块中的 argv 成员,并为该成员指定别名 v,这样即可在程序中通过别名 v 使用 argv 成员,无须使用任何前缀。运行该程序,可以看到如下输出结果:

fromimporttest2.py

在使用 form…import 导入模块成员时也可同时导入多个成员,例如如下程序:

#导入sys模块的argv,winver成员
fromsysimportargv,winver
#使用导入成员的语法,直接使用成员名访问
print(argv[0])
print(winver)

上面第 2 行代码导入了 sys 模块中的 argv、 winver 成员,这样即可在程序中直接使用 argv、winver 两个成员,无须使用任何前缀。运行该程序,可以看到如下输出结果(sys 的 winver 成员记录了该 Python 的版本号):

fromimporttest3.py
3.6

在使用 from…import 同时导入多个模块成员时也可指定别名,同样使用 as 关键字为成员指定别名,例如如下程序:

#导入sys模块的argv,winver成员,并为其指定别名v、wv
fromsysimportargvasv,winveraswv
#使用导入成员(并指定别名)的语法,直接使用成员的别名访问
print(v[0])
print(wv)

上面第 2 行代码导入了 sys 模块中的 argv、winver 成员,并分别为它们指定了别名 v、wv,这样即可在程序中通过 v 和 wv 两个别名使用 argv、winver 成员,无须使用任何前缀。

在使用 from…import 语法时也可一次导入指定模块内的所有成员,例如如下程序:

#导入sys棋块内的所有成员
fromsysimport*
#使用导入成员的语法,直接使用成员的别名访问
print(argv[0])
print(winver)
原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容