详解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无法在pycharm中使用plot()方法显示图像的问题

最近用了pycharm,感觉还不错,就是pandas中Series、DataFrame的plot()方法不显示图片就给我结束了,但是我在ipython里就能画图 以前的代码是这样的...

python线程锁(thread)学习示例

复制代码 代码如下:# encoding: UTF-8import threadimport time# 一个用于在线程中执行的函数def func():  &nbs...

python logging日志模块以及多进程日志详解

本篇文章主要对 python logging 的介绍加深理解。更主要是 讨论在多进程环境下如何使用logging 来输出日志, 如何安全地切分日志文件。 1. logging日志模块介绍...

python 实现12bit灰度图像映射到8bit显示的方法

图像显示和打印面临的一个问题是:图像的亮度和对比度能否充分突出关键部分。这里所指的“关键部分”在 CT 里的例子有软组织、骨头、脑组织、肺、腹部等等。 技术问题 1、显示器往往只有 8-...

如何更改 pandas dataframe 中两列的位置

如何更改 pandas dataframe 中两列的位置

如何更改 pandas dataframe 中两列的位置: 把其中的某列移到第一列的位置。 原来的 df 是: df = pd.read_csv('I:/Papers/consume...