国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python基础教程 > python怎么引包

python怎么引包

头像

晓曦&sea

2020-07-13 16:38:275117浏览 · 0收藏 · 0评论

python引包的三种方法:1、输入“import 包名”命令导入;2、输入“from 包名 import 模块名”命令导入;3、输入“from 包名.模块名 import 成员名”导入。

包其实本质上是???,因此导入??榈挠锓ㄍ彩视糜诘既氚?。无论导入我们自定义的包,还是导入从他处下载的第三方包,导入方法可归结为以下 3 种:

import 包名[.模块名 [as 别名]]

from 包名 import 模块名 [as 别名]

from 包名.模块名 import 成员名 [as 别名]

用 [] 括起来的部分,是可选部分,即可以使用,也可以直接忽略。

注意,导入包的同时,会在包目录下生成一个含有 __init__.cpython-36.pyc 文件的 __pycache__ 文件夹。

1) import 包名[.模块名 [as 别名]]

以 my_package 包为例,导入 module1 模块并使用该??橹谐稍笨梢允褂萌缦麓耄?/p>

import my_package.module1
my_package.module1.display("http://c.biancheng.net/java/")


运行结果为:

http://c.biancheng.net/java/

可以看到,通过此语法格式导入包中的指定??楹螅谑褂酶媚?橹械某稍保ū淞俊⒑?、类)时,需添加“包名.模块名”为前缀。当然,如果使用 as 给包名.??槊逼鹨桓霰鹈幕?,就使用直接使用这个别名作为前缀使用该??橹械姆椒耍纾?/p>

import my_package.module1 as module
module.display("http://c.biancheng.net/python/")


程序执行结果为:

http://c.biancheng.net/python/


另外,当直接导入指定包时,程序会自动执行该包所对应文件夹下的 __init__.py 文件中的代码。例如:

import my_package
my_package.module1.display("http://c.biancheng.net/linux_tutorial/")


直接导入包名,并不会将包中所有??槿康既氲匠绦蛑校淖饔媒鼋鍪堑既氩⒅葱邪碌?__init__.py 文件,因此,运行该程序,在执行 __init__.py 文件中代码的同时,还会抛出 AttributeError 异常(访问的对象不存在):

http://c.biancheng.net/python/
Traceback (most recent call last):
  File "C:\Users\mengma\Desktop\demo.py", line 2, in <module>
    my_package.module1.display("http://c.biancheng.net/linux_tutorial/")
AttributeError: module 'my_package' has no attribute 'module1'


我们知道,包的本质就是???,导入??槭?,当前程序中会包含一个和??槊依嘈臀?module 的变量,导入包也是如此:

import my_package
print(my_package)
print(my_package.__doc__)
print(type(my_package))


运行结果为:

http://c.biancheng.net/python/
<module 'my_package' from 'C:\\Users\\mengma\\Desktop\\my_package\\__init__.py'>
http://c.biancheng.net/


创建第一个 Python 包

<class 'module'>

2) from 包名 import ??槊?[as 别名]

以导入my_package 包中的 module1 ??槲?,使用此语法格式的实现代码如下:

from my_package import module1
module1.display("http://c.biancheng.net/golang/")


运行结果为:

http://c.biancheng.net/python/
http://c.biancheng.net/golang/

可以看到,使用此语法格式导入包中??楹螅谑褂闷涑稍笔辈恍枰白?,但需要带??槊白?。

当然,我们也可以使用 as 为导入的指定??槎ㄒ灞鹈?,例如:from my_package import module1 as modulemodule.display("http://c.biancheng.net/golang/")
此程序的输出结果和上面程序完全相同。

同样,既然包也是??椋敲凑庵钟锓ǜ袷阶匀灰仓С?nbsp;from 包名 import * 这种写法,它和 import 包名 的作用一样,都只是将该包的 __init__.py 文件导入并执行。

3) from 包名.??槊?import 成员名 [as 别名]

此语法格式用于向程序中导入“包.??椤敝械闹付ǔ稍保ū淞俊⒑蚶啵?。通过该方式导入的变量(函数、类),在使用时可以直接使用变量名(函数名、类名)调用,例如:

from my_package.module1 import display
display("http://c.biancheng.net/shell/")


运行结果为:

http://c.biancheng.net/python/
http://c.biancheng.net/shell/


当然,也可以使用 as 为导入的成员起一个别名,例如:

from my_package.module1 import display as dis
dis("http://c.biancheng.net/shell/")


该程序的运行结果和上面相同。

另外,在使用此种语法格式加载指定包的指定模块时,可以使用 * 代替成员名,表示加载该模块下的所有成员。例如:

from my_package.module1 import *
display("http://c.biancheng.net/python")

推荐课程:零基础入门学习Python(小甲鱼)

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

《请好好疼爱里面》免费观看| CSGO暴躁妹妹免费观看电视剧| 《你邻居的妻子》电视剧| 《淫海春潮》法国1980| 女朋友太骚了每次进去都觉得很疼| 玉女献身台湾1988版主演是谁| 淑芬啊…啊别停灬用力啊视频| 少妇被大黑捧猛烈进出动态图| 出门忘穿胸罩乳头凸起怎么办 | MD传媒破解版APP免费版| 我在开会他在下添好爽在线视频| 伦理《少妇的滋味》完整版| 雨后小故事无删减版GIF| 第9节 妈妈女儿齐上阵| 茉莉花| 少女配狗视频大全播放| 罚坐三角架尖尖图片| 扒开粉嫩小滨白浆20P| 妈妈装睡配合孩子阴阳调和| 美雪爱丽丝| 明明说好的只蹭蹭苦苦恳求歌词 | 美女国模大尺度辨阴| 男人女人免费观看40集电视剧| 9.1萝卜黄| 《医务室的小秘密》动漫第一季免.. | 白色空白图片| 中字《喝醉的丈夫被结城送回家》 | 进击的巨人| 舒淇最惊艳三部电影| 《高压监狱3》法国版正版| 《太太你想丈夫被开除吧》| 女人大阴唇夹缝是阴虚还是阳虚 | 女性穿裤子阴沟凸起是咋回事| 《家访的老师》动漫在线观看| 保姆的特殊待遇5| 男人吸吮完乳房应该怎么处理 | 嗯啊~使劲~别停~高H漫画| 外卖服务3| 站立式插插的正确方法| 酒店实拍100部视频最新进展| 日韩精品国产一区二区三区