python怎么导入库包?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python怎么导入库包?相关的知识,希望对你有一定的参考价值。

Python库的导入 import A 为最简单的引入对应的包。 参考技术A

包(packages)其实也是模块,其类型Type也是module。通常引用自定义模块时有两种方法:

1)将两个文件放在同一目录下。

2)在sys.path下添加要引用的py文件的路径。然后import。

这样的做法,对于少数文件是可行的,但如果程序数目很多,层级很复杂时就比较麻烦了。此时用package就能将多个py文件组织起来,类似于第三方包一样的引用。要方便很多。


package的层次结构与程序所在目录的层次结构相同,且必须包含一个__init__.py的文件。__init__.py可以为空,只要它存在就表明此目录被作为一个package处理。


package1/

__init__.py

subPack1/

__init__.py

module_11.py

module_12.py

module_13.py

subPack2/

__init__.py

module_21.py

module_22.py

……


__init__.py可以为空,只要它存在,就表明此目录应被作为一个package处理。当然,__init__.py中也可以设置相应的内容。

好了,现在我们在module_11.py中定义一个函数:


def funA():

print "funcA in module_11"

return


一.引用模块

在顶层目录(也就是package1所在的目录,当然也参考上面的介绍,将package1放在解释器能够搜索到的地方)运行python:


>>>from package1.subPack1.module_11 import funcA

>>>funcA()

funcA in module_11


这样,我们就按照package的层次关系,正确调用了module_11中的函数。


二.使用通配符*,导入某个module中的所有元素

答案就在__init__.py中。我们在subPack1的__init__.py文件中写


__all__ = ['module_13', 'module_12']


然后进入python

>>>from package1.subPack1 import *

>>>module_11.funcA()

Traceback (most recent call last):

File "", line 1, in 

ImportError: No module named module_11


也就是说,以*导入时,package内的module是受__init__.py限制的。


三.在package内部互相调用。

    如果希望调用同一个package中的module,则直接import即可。也就是说,在module_12.py中,可以直接使用

    import module_11

2.如果不在同一个package中,例如我们希望在module_21.py中调用module_11.py中的FuncA,则应该这样:

from module_11包名.module_11 import funcA


四.Python如何找到我们定义的module?

在标准包sys中path属性记录了Python的包路径。

import sys

print(sys.path)

通常我们可以将module的包路径放到环境变量PYTHONPATH中,该环境变量会自动添加到sys.path属性.

另一种方便的方法是编程中直接指定我们的module路径到sys.path 中。

常用的话也可以放在python27\\lib\\site-packages文件夹下。

库包模块

一、
库: python的一个一个的项目

标准库:python安装时自带的库

第三方库:所有pythoner开发经过审核后作为第三方库

自己写的库:项目名

二、包

 1、包的概念

包是一个有层次的文件目录结构,由模块和子包组成。包就是包含__init__.py的文件夹

 技术分享

 

 

2、python中__init__.py文件的作用

python的每个模块的包中,都有一个__init__.py文件,有了这个文件,我们才能导入这个目录下的module。


三、模块

定义: 以.py为结尾的文件都是模块

1、导入模块

import语句

推荐:

import放在程序前面,且按照Python标准库模块、Python第三方模块、自定义模块的顺序从上到下排开。

2、from-import语句

可以导入模块中指定属性:from module import name1[,nam2[,...nameN]]

注意:

(1)、导入可使用\\进行换行,

如:from module import nam1,name2,\\
name3,name4....

(2)、使用as更换名称:

from module import name1 as name2

2、搜索模块路径
Python搜索模块的路径:
1)、程序所在目录
2)、python安装标准库目录
3)、第三方库目录

 








以上是关于python怎么导入库包?的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序直播怎么弄

Python调用MYSQL,将文件名和路径批量入库用法小结

pycharm中导入库pandas

怎么样导入RobotFramework 自定义关键字

Python 开发工具PyCharm 导入 引入库

thinkphp5 extend扩展库放哪里,该怎么new