导入包操作和本质
常见方式如下:
import a.aa.module_AA
: 按模块路径导入在使用时,必须加完整名称来引用. 比如:a.aa.module_AA.fun_AA()
from a.aa import module_AA
: 按包路径导入模块在使用时,直接可以使用模块名. 比如:module_AA.fun_AA()
from a.aa.module_AA import fun_AA
按照模块路径导入指定类or方法在使用时,直接可以使用函数名。比如:fun_AA()
注意事项:
from package import item
这种语法中, item 可以是包、模块,也可以是函数、类、变量(对照方式23)import item1.item2
这种语法中, item 必须是包或模块,不能是其他(对照方式1)
实操代码
# 方式一: 按模块路径导入
import com.time.pause.capture2.module.a.aa.module_AA
print(com.time.pause.capture2.module.a.aa.module_AA.add(10, 20))
# 方式二: 按包路径导入模块
from com.time.pause.capture2.module.a.aa import module_AA
print(module_AA.add(10, 20))
# 方式三: 按照模块路径导入指定类or方法
from com.time.pause.capture2.module.a.aa.module_AA import add
add(10, 20)
import com.time.pause.capture2.module.a
导入包的本质
其实是“导入了包的
__init__.py
”文件. 也就是说import pack1
意味着执行了包 pack1 下面的__init__.py
文件. 这样可以在__init__.py
中批量导入我们需要的模块,而不再需要一个个导入.
实操代码: 测试包的 __init__.py
文件本质用法a 包下的 __init__.py
文件添加如下内容:
import turtle
import math
print("导入a包")
b 包下的 module_B1.py
文件中导入 a 包,添加代码如下:
import com.time.pause.capture2.module.a
print(com.time.pause.capture2.module.a.math.pi)
# 如上测试我们可以看出python的设计者非常巧妙的通过__init__.py 文件将包转成了模块的操作
用 * 导入包
import *
这样的语句理论上是希望文件系统找出包中所有的子模块,然后导入它们. 尽管提供 import * 的方法,仍不建议在生产代码中使用这种写法 Python 解决方案是提供一个明确的包索引. 这个索引由 init .py 定义 all 变量,该变量为一个列表, 如上例 a包下的__init__.py
中,可定义__all__ = ["module_A","module_A2"]
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
模块
+关注
关注
7文章
2486浏览量
46561 -
函数
+关注
关注
3文章
3911浏览量
61335 -
代码
+关注
关注
30文章
4557浏览量
66835 -
python
+关注
关注
51文章
4678浏览量
83483
发布评论请先 登录
相关推荐
导入Python库失败的缺失库怎么解决
在写 Python 项目的时候,我们可能经常会遇到导入模块失败的错误:ImportError: No module named xxx或者ModuleNotFoundError: No module
发表于 11-21 11:46
•2694次阅读
基于Python构建的专门进行数据操作和分析的开源软件库
Pandas 是一个基于 Python 构建的专门进行数据操作和分析的开源软件库,可提供数据结构和运算,进行功能现强大、灵活且易于使用的数据分析和操作。Pandas 为热门编程语言赋予了处理类似
发表于 07-22 09:57
•961次阅读
为什么要重构?如何重组Python包?
目前__init__.py尚不完整。稍后我们将重新访问该文件。 接下来,我们编写一个测试用例,以确保我们仍然可以像导入旧包一样导入该包。 tests.py中的“”” 简单的向
发表于 09-15 15:28
什么是python包、模块和库?
名为 demo.py 的文件,文件内容如下name="Python编程时光"print("导入成功")直接使用 import 语句就可以导入,导入之后,就可以
发表于 03-09 16:48
python花式导包的八种方法
python花式导包的八种方法1. 直接 import人尽皆知的方法,直接导入即可>>> import os>>> os.getcwd()'/home/xxx
发表于 03-10 16:51
python 包导入的三个冷门知识点
中使用 __all__ 来控制想要被其他模块导入的变量。# profile.pyname='小明'age=18__all__=['name']打开 python console 验证一下>>
发表于 03-14 16:33
python包模块相对导入from和import介绍1
无包文件**init**.py下,python通过import module导入模块时,先搜索程序运行主目录。
程序运行主目录为运行的py文件所在目录,而不是执行python.exe时所在目录。
模块搜索路径sys.
TSMaster小功能—Python小程序如何导入外部库
今天给大家介绍TSMaster功能之Python小程序如何导入外部库。通过在TSMaster默认的解析器路径下导入外部库来介绍,以便我们去使用Python外部库。TSMaster默认
import模块的导入方法
: 一般通过 import 语句实现模块的导入和使用, import 本质上是使用了内置函数 __import__() 当我们 通过 import 导入一个模块时,python解释器进
Python import Hook 实现远程导入模块
所谓的模块 导入,是指在一个模块中使用另一个模块的代码的操作,它有利于代码的复用。 也许你看到这个标题,会说我怎么会发这么基础的文章? 与此相反。恰恰我觉得这篇文章的内容可以算是 Python
python如何导入模块
Python是一种强大的编程语言,它支持模块化编程,使得开发者可以将代码分解为可重用且独立的模块。模块是一个包含函数、类和变量等定义的文件,我们可以使用import语句将这些模块导入到我们的程序
Python怎么导入math模板
在Python中使用math模块需要先导入该模块。math模块提供了许多数学函数和数值常量,可以在数学计算和统计分析等方面派上用场。下面将详细介绍如何导入math模块以及如何使用它的各种功能。 要使
评论