详解python中的模块及包导入

yipeiwu_com5年前Python基础

python中的导入关键字:import 以及from  import

1、import

  import一般用于导入包以及模块。

  不过有个小问题:

  (1)当导入的是模块的时候是可以直接可以使用模块内的函数以及变量的,

     比如说:包名为:com.test,在这个包底下有个模块为a.py,那么当其他包中的模块想要引入a模块的时候写法为  

import com.test.a  

    在b.py中调用的方式为:com.test.a.(a中的函数或者变量),而不能直接写为a.(a中的函数名或者变量)

  (2)当导入的是包名的时候,例如:import com.test

    这个时候会发现,不能使用test包下的模块,解决方法是在test包下新建一个_init_.py文件(在pycharn中,当你新建package时,都会自动生成一个_ini_.py文件),在这个文件中书写   

from . import a

    在上面这句话中 . (点)代表的是当前文件夹。这是因为在进行import 包名的操作的时候其会调用_init_.py文件。

    这样就可以在b模块中进行调用了,本来是想省事的,想在_init_.py中使用from . import *来将test包下的模块都进行引入,然后发现并不可以,                只能一个一个模块的进行引入。

     调用方法同上,也是通过(包名.模块名.方法或者变量名)进行调用

2、from .. import ..

  一般写法为from 包名 import 模块名或者是 from 模块名 import 函数名

  这种方法写起来就比较直观一点,也不用书写_init_.py文件,只用将相应的模块名或者模块中的函数名进行引入即可,调用的时候直接通过模块名           进行调用,不能通过(包名.模块名.函数名)进行调用。

注意:上述的操作仅仅适用于在同一个文件夹下不同包之间进行调用。

总结

以上所述是小编给大家介绍的python中的模块及包导入,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

pandas 如何分割字符的实现方法

pandas 如何分割字符的实现方法

摘要:本文主要是在pandas中如何对字符串进行切分。我们考虑一下下面的应用场景。 这个是我们的数据集(data),可以看到,数据集中某一列(name)是某个行业的分类。各个行业之间...

python 禁止函数修改列表的实现方法

有时候,需要禁止函数修改列表。例如要对裂变进行修改操作,也要保留原来的未打印的设计列表,以供备案。为解决这个问题,可向函数传递列表的副本而不是原件;这样函数所做的任何修改都只影响副本,而...

分享一下如何编写高效且优雅的 Python 代码

分享一下如何编写高效且优雅的 Python 代码

本文部分提炼自书籍:《Effective Python》&《Python3 Cookbook》,但也做出了修改,并加上了作者自己的理解和运用中的最佳实践。 全文约 9956 字,读完可能...

python对文件目录的操作方法实例总结

本文实例讲述了python对文件目录的操作方法。分享给大家供大家参考,具体如下: python 可以很方便的对文件进行打开,读写操作,删除操作,也可以很方便的对文件夹进行遍历操作。总体说...

NumPy排序的实现

numpy.sort()函数 该函数提供了多种排序功能,支持归并排序,堆排序,快速排序等多种排序算法 使用numpy.sort()方法的格式为: numpy.sort(a,axis,k...