iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python 中的 module 和 package
  • 590
分享到

python 中的 module 和 package

2024-04-02 19:04:59 590人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

接着如何在python 中导入 package的分享,这一次是在 package 下继续嵌套一个 package , 项目目录如下: pkg1 ---__init

接着如何在python 中导入 package的分享,这一次是在 package 下继续嵌套一个 package ,

项目目录如下:

pkg1
---__init__.py
---mod1.py
------pkg2
---------__init__.py
---------mod2.py
import pkg1.pkg2.mod2

我们尝试将 mod2 进行导入,这一次将先导入 pkg1 然后 pkg2 最后导入 mod2

import pkg1
import pkg2
import mod2

从输出上来看,我们发现 mod1 并没有自动被导入进来。

import pkg1.pkg2.mod2

pkg1.pkg2.mod2.say_hi()

我们通过pkg1.pkg2.mod2.say_hi()来访问 mod2 中 say_hi 函数。

print('pkg1' in sys.modules)#True
print('pkg1.pkg2' in sys.modules)#True
print('pkg1.pkg2.mod2' in sys.modules)#True

通过给导入 module 起一个别名方式来快捷地访问 mod2 module 对象的属性。Python 会自动执行可以访问到 mod2 经过的 package ,通过输出不难发现这些 package 已经被导入,并添加到了 sys.modules 缓存中。

import pkg1.pkg2.mod2 as mod2

mod2.say_hi()
pkg1
---__init__.py
---mod1.py
------pkg2
---------__init__.py
---------mod2.py
main.py

在 pkg1 package 下 __init__.py

import pkg1.pkg2.mod2
print("import pkg1")

这我们在 pkg1 package 下的 __init__.py 文件导入 mod2 module 是绝对路径 pkg1.pkg2.mod2。表示我们执行 __init__.py 文件是在 pkg1 外面执行,所以路径中也包含了 pkg1,对于这个 project 来说,main.py 是入口文件,要执行这个项目,我们只需要执行文件夹下 main.py 文件即可。pkg1 和 main.py 位于同一个目录级别,任何子模块(sub-module)都是

import pkg1.pkg2.mod2 as mod2

mod2.say_hi()

为了解释我们进一步说明,我们再去创建一个项目,项目下放两个

main.py
my_mod.py
import Socket
x=2
def say_hi():
    print("say hi from my mod")

在 main.py 代码如下

import my_mod as mod

print(mod.x)
print(mod.socket.gethostname())

从而我们知道,我们在 main.py 导入 my_mod 作为,然后在 my_mod 文件导入 socket module 可以通过 mod.socket 导入。

server
---app.py

这里我们 app.py 里只添加了一个语句,在终端输出

print("running app")

在 python 中,可以在目录下搜索指定的文件并执行,python 解释器提供 -m 参数可以让我们指定module 名称来执行一个 python module 文件,所以可以通过下面语句来运行 server 文件夹下的 app.py 文件。

python -m server.app

python 会在 sys.path 路径搜索 `server/app.py

我们也可以将 server 下的 app.py 重命名为 __main__.py 如下

server
---__main__.py

这样就可以直接通过 python -m server 语句来执行 server package 下的 __main__.py 文件。当然我们可以同时在 server package 创建一个 __init__.py 和 __main__.py 两个文件。

到此这篇关于 python 中的 module 和 package 的文章就介绍到这了,更多相关 module 和 package 内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python 中的 module 和 package

本文链接: https://www.lsjlt.com/news/117333.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python 中的 module 和 package
    接着如何在python 中导入 package的分享,这一次是在 package 下继续嵌套一个 package , 项目目录如下: pkg1 ---__init...
    99+
    2024-04-02
  • python中的module和package怎么用
    这篇文章主要介绍“python中的module和package怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python中的module和package怎么用”文章能帮助大家解决问题。在 pa...
    99+
    2023-06-30
  • Python--模块(Module)和包(Package)详解
    目录一、模块的导入1.什么是模块(module)2.模块有什么作用3.模块的分类4.什么是包(package)5.import/fromimport导入 6.使用名字导入7.制作包与...
    99+
    2024-04-02
  • rust的package,crate,module怎么使用
    这篇文章主要介绍“rust的package,crate,module怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“rust的package,crate,module怎么使用”文章能帮助大家解...
    99+
    2023-07-06
  • rust的package,crate,module示例解析
    目录package,crate,modulecratepackage模块 Module引用module路径super创建公有的结构体和枚举use创建惯用的 use 路径使用 pub ...
    99+
    2023-05-15
    rust的package crate module rust package crate
  • oracle中package包头和package body包体有什么用
    这篇文章主要为大家展示了“oracle中package包头和package body包体有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“oracle中pa...
    99+
    2024-04-02
  • 如何在python 中导入 package
    package 在 python 中,是一种有效组织代码,module 可以是一个文件,可以通过 import 来导入一个 module 单个文件,而 package 则是作为一个目...
    99+
    2024-04-02
  • 怎么在python中导入package
    本篇内容介绍了“怎么在python中导入package”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!package 在 python 中,是...
    99+
    2023-06-30
  • Python 中OS module的使用详解
    Python的os模块是用于与操作系统进行交互的标准库之一,它提供了许多有用的函数和变量,以便处理文件和目录。下面是一些常见的os模块函数的用法: 1.获取当前工作目录: impor...
    99+
    2023-03-15
    Python OS module使用 Python OS模块
  • Python中的OS module如何使用
    这篇“Python中的OS module如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python中的OS...
    99+
    2023-07-05
  • 关于Python中No module n
    1.执行代码时报错 错误信息:ModuleNotFoundError: No module named 'requests' 错误截图: 查看python版本命令如下: python -V 查看python版本命令截图如下:2.解决办法1 ...
    99+
    2023-01-31
    Python module
  • 关于Python的Type,Module
    关于Python的Type,Module,ClassPosted on 2007-07-13 by jeff 类在Python中只是一种数据类型.而任何东西都是对象应该是针对Type来说的,对象是Type的实例,而并不限于是类的实例.要知道...
    99+
    2023-01-31
    Python Type Module
  • Java 中 Class Path 和 Package的使用详解
    目录一、 类路径 (class path)二、 包 (package)三、 jar 文件一、 类路径 (class path) 当你满怀着希望安装好了 java, 然后兴冲冲地写了个...
    99+
    2022-11-13
    Java 中的Class Path Java 中的Package
  • Node.JS中的模块、exports和module讲解
    目录模块核心模块文件模块基本数据类型引用数据类型exports和module.exports的关系模块 分为两大类 核心模块 由node引擎提供的模块核心模块的标识就是模块的名字 v...
    99+
    2023-01-11
    node.js模块 exports和module node.js exports和module
  • python的module如何用
    在Python中,我们使用`import`语句来导入模块。一旦导入了一个模块,我们就可以使用模块中定义的函数、变量和类。下面是导入模...
    99+
    2023-08-23
    python module
  • module怎么在python中使用
    今天就跟大家聊聊有关module怎么在python中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相...
    99+
    2023-06-14
  • Python中的ModuleNotFoundError: No module named ‘sklearn‘解决方案
    Python中的ModuleNotFoundError: No module named 'sklearn’解决方案 当你在使用Python编程语言时,如果遇到类似于"ModuleNotFoundEr...
    99+
    2023-10-11
    python sklearn 开发语言 Python
  • 解决Python中的ModuleNotFoundError: No module named ‘paddle‘错误
    解决Python中的ModuleNotFoundError: No module named 'paddle’错误 当在Python中运行代码时,有时可能会遇到"ModuleNotFoundError...
    99+
    2023-10-02
    python paddle r语言 Python
  • ES6中Class和Module有什么用
    小编给大家分享一下ES6中Class和Module有什么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、ClassES6引入了Class(类)这个概念,作为对象的模板。通过class关...
    99+
    2024-04-02
  • 怎么理解edb中的package
    本篇内容介绍了“怎么理解edb中的package”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!创建pack...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作