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

文章 > Python基础教程 > python packages是什么意思

python packages是什么意思

头像

爱喝马黛茶的安东尼

2019-10-09 15:19:005601浏览 · 0收藏 · 0评论

package指的就是包,它是一个有层次的文件目录结构,它定义了由n个??榛騨个子包组成的python应用程序执行环境。通俗一点:包是一个包含__init__.py 文件的目录,该目录下一定得有这个__init__.py文件和其它??榛蜃影?。

但是这会分为两种情况,第一种情况是一个空的__init__.py文件,另外一个情况是写了代码的__init__.py文件。不管是空的还是有内容的,这个目录都会被认为是一个package,这是一个标识。

相关推荐:《Python基础教程

package的初始化工作

一个package 被导入,不管在什么时候__init__.py的代码都只会被执行一次

>>> import package
hello world
>>> import package
>>> import package

由于 package 被导入时 __init__.py 中的可执行代码会被执行,所以小心在 package 中放置你的代码,尽可能消除它们产生的副作用,比如把代码尽可能的进行封装成函数或类。

__init__.py内的导入顺序

当我尝试导入

from package import something

import语句会首先检查something是不是__init__.py的变量,然后检查是不是subpackage,再检查是不是module,最后抛出ImportError。

所以检查顺序如下:

(1)__init__.py 文件内变量

(2)是不是package内的subpackage

(3)是不是package内的module

看个例子

我们有一个如下结构的package

在a.py文件内有一个函数

def bar():
    print("Hello, function 'bar' from module 'a' calling")

在b.py文件内有一个函数

def foo():
    print("Hello, function 'foo' from module 'b' calling")

然后我们添加一个空的__init__.py 文件在simple_package里面。

我们看下,当我们import simple_package的时候到底会发生什么事情(在simple_package内激活Python shell或者simple_package的路径被包含在python的sys.path或者在PYTHONPATH的环境变量中)

>>> import simple_package
>>> 
>>> simple_package
<module 'simple_package' from '/home/bernd/Dropbox (Bodenseo)/websites/python-course.eu/examples/simple_package
/__init__.py'>
>>> 
>>> simple_package.a
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined
>>> 
>>> simple_package.b
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'b' is not defined

我们可以看到simple_package已经被成功导入,但是a.py和b.py并没有被导入

当然了,如果你希望使用import simple_package后自动加载a或者b 模块,这里有两种办法。

第一种就是在__init__.py内导入a或者b???,然后保存再激活python的交互环境

#__init__.py
import a
import b

当你再次尝试import simple_package后,就可以使用simple_package.a.bar()来使用模块a中的bar()函数了。

第二办法就是手动导入,当你想使用模块a中的bar()函数时,需要手动导入

import simple_package.a as a

然后就是可以a.bar()来使用bar()函数了。

关注

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

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

啵啵浏览器| 新婚压床被别人开了苞| LIBRA| 趴在办公桌把腿张开| 迪拜的女孩| 16岁小花妹妹CSGO| 姐姐用脚帮你打枪| 父母儿女一家狂第八集| 尿孔 调教 扩张| 共享女儿小诗1~10章的背景资...| 婆岳同床双飞呻吟艳妇无边 | 引诱沉沦BY肉桂笔趣阁小说| 老公拿狗给我配| 私密整形医院| 蜜汁| 母与子免费观看大全电视剧| 男生把困困放到女生困困视频高清| 苏软软汆肉的日常花卷| 《法国少女3》高清| 公交车上被蹭水后多久自然恢复 | 快一点慢一点上一点下一点歌曲| 喜爱夜蒲在线观看| 初次尝了销魂少妇邻居| 妈妈装睡配合孩子阴阳调和| 《丽贝卡的秘密》| 一母四女战一婿刘琴小说免费阅读 | 《厨房激战5》完整版在线观看| 日本暴力强伦轩视频| 瑜伽裤透明全毛露丁字裤| 禁忌4| 《帐篷里的秘密》动漫| 一边摸上面一边敷面膜| 国产乱子伦精品视频潮| 《大尺度吃奶做爰》电影| TOKYO.HOT| 当着全班面被C到高潮哭视频| 《诱人的女房东3》| 成全在线观看免费全集高清完整版| 电影《偷吃》在线观看| SNH48欧洲码和亚洲码图片| 在线观看免费视频