python包有什么用

  介绍

这期内容当中小编将会给大家带来有关python包有什么用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

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

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

<强>包的初始化工作

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

在祝辞祝辞import 包   hello 世界   在祝辞祝辞import 包   祝辞祝辞祝辞,import 包

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

<强> __init__。py内的导入顺序

当我尝试导入

得到package  import 一些

导入语句会首先检查东西是不是__init__ . py的变量,然后检查是不是分装,再检查是不是模块,最后抛出ImportError。

所以检查顺序如下:

(1) __init__。py文件内变量

(2)是不是包内的分包

(3)是不是包内的模块

<强>看个例子

我们有一个如下结构的包

在。py文件内有一个函数

def 酒吧():   ,,,print(“你好,,function  & # 39;酒吧# 39;,得到module  & # 39;一个# 39;,calling")

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

def  foo ():   ,,,print(“你好,,function  & # 39; foo # 39;,得到module  & # 39; b # 39;, calling")

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

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

在祝辞祝辞import  simple_package   在在在,   在祝辞祝辞simple_package   & lt; module  & # 39; simple_package& # 39;,得到& # 39;/home/bernd/Dropbox  (Bodenseo)/网站/python-course.eu//simple_package例子/__init__ . py # 39;比;   在在在,   在祝辞祝辞simple_package.a   Traceback  (most  recent  call 最后一个):   File 才能“& lt; stdin>“, line  1,拷贝& lt; module>   NameError: name  & # 39;一个# 39;is  not 定义   在在在,   在祝辞祝辞simple_package.b   Traceback  (most  recent  call 最后一个):   File 才能“& lt; stdin>“, line  1,拷贝& lt; module>   NameError: name  & # 39; b # 39;, is  not 定义

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

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

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

# __init__ . py   import    import  b

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

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

import  simple_package.a  as 一个

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

上述就是小编为大家分享的python包有什么用了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

python包有什么用