详解python中的模块及包导入

yipeiwu_com6年前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设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Flask框架工厂函数用法实例分析

本文实例讲述了Flask框架工厂函数用法。分享给大家供大家参考,具体如下: 在我们开始学习FLask的时候,创建应用的实例是用app=Flask(name)来做的,但是当我们想创建多个不...

python实现名片管理器的示例代码

编写程序,完成“名片管理器”项目 需要完成的基本功能: 添加名片 删除名片 修改名片 查询名片 退出系统 程序运行后,除非选择退出系统,否则重复执行功能 mi...

微信跳一跳python辅助软件思路及图像识别源码解析

微信跳一跳python辅助软件思路及图像识别源码解析

本文将梳理github上最火的wechat_jump_game的实现思路,并解析其图像处理部分源码 首先废话少说先看效果 核心思想 获取棋子到下一个方块的中心点的距离 计算触摸屏...

numpy 计算两个数组重复程度的方法

最近有个需求,是做两个数组重复程度计算,麻烦就麻烦在单个数组的元素有可能重复,处理思路如下: 1. 找到重复元素 2. 元素个数统计,利用np.bincount转换,即元素个数统计到元素...

python中实现定制类的特殊方法总结

看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的。 __slots__我们已经知道怎么用了,__len__()方法我们也知道是...