061、Python 包:模块管理

包(Package)是一种用于组织模块的层次结构。包实际上就是一个包含了__init__.py文件的目录,该文件可以为空或包含包的初始化代码。通过使用包,可以更好地组织和管理大型项目中的模块,避免命名冲突,并提高代码的可维护性。

1、创建包:

(1)、假如存在一个文件夹,我们可以直接把它转换为包文件。通过右键文件夹–>Mark Directory as–>Namespace Package即可转换,如下图:

请添加图片描述

(2)、直接通过New–>Python Package新建一个包,如下图所示:

请添加图片描述

(3)、创建了包文件后,我们可以添加一个__init__.py文件,可以留空,也可以包含初始化代码。该文件代码在引用包的时候会先调用。

(4)、然后我们就可以把要组织的模块放入到包的目录中。

(5)、包的基本结构如下:

my_package/__init__.pymodule1.pymodule2.py

2、导入包和模块:

  • 导入包:使用import语句导入包,如:

    import my_package
    
  • 导入模块:使用fromimport关键字导入包中的特定模块如:

    from my_package import module1
    
  • 导入包中特定模块中函数:使用.操作符,如:

    from my_package.module1 import some_function as fun1
    

3、包的优点和注意事项:

(1)、包的优点

  • 组织性:包可以更好地组织和管理大型项目中的模块。
  • 避免命名冲突:包可以避免不同模块之间的命名冲突。
  • 可维护性:通过使用包,更容易地维护和扩展代码。

(2)、注意事项:

  • 包名应该是唯一的,避免与其他包重名。
  • 包目录中的__init__.py文件可以为空,也可以包含初始化代码。
  • 在Python 3.3及以后的版本中,__init__.py文件不再是必需的,但仍然推荐在包目录中包含该文件。

  • 在Python 3.3及以后的版本中,__init__.py文件不再是必需的,但仍然推荐在包目录中包含该文件。

总结:做工程化项目开发时,如果项目的代码文件非常多,那么我们就可以通过“包”来管理“模块”,然后再通过“模块”来管理函数。Python中的fromimportas关键字就是专门用来处理包和模块导入操作的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/855213.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hadoop+Spark大数据技术(自命题试卷测试)

试卷一 一、选择题 (每小题2分,共20分) 1. Hadoop 核心组件包括: A. HDFS 和 Hive B. HDFS 和 MapReduce C. HBase 和 Spark D. YARN 和 ZooKeeper 2. HDFS 数据块存储方式的优势不包括: A. 文件大小不受单一磁盘大小…

kettle从入门到精通 第七十一课 ETL之kettle 再谈http post,轻松掌握body中传递json参数

场景: kettle中http post步骤如何发送http请求且传递body参数? 解决方案: http post步骤中直接设置Request entity field字段即可。 1、手边没有现成的post接口,索性用python搭建一个简单的接口,关键代码如下&#…

深度学习模型的生命周期与推理系统架构

目录 深度学习模型的生命周期 ​编辑 深度学习模型的生命周期 推理相比训练的新特点与挑战 推理系统架构 推理系统 vs 推理引擎 顶层:API接口和模型转换 中层:运行时(计算引擎) 底层:硬件级优化 边缘设备计算 主要问题 边缘部署和推理方式 方式1:边缘设备计…

可提供实习证明/实习鉴定报告,企业项目试岗实训开营啦

在数字化转型的浪潮中,大数据和人工智能等前沿技术已成为推动经济发展和科技进步的关键动力。当前,全球各行各业都在积极推进数字化转型,不仅为经济增长注入新活力,也对人才市场结构产生了深刻影响,尤其是对数字化人才…

如何编辑和修改ROM,快速上手

编辑和修改ROM是一个相对复杂的过程,需要一定的技术知识和准备。以下是编辑和修改ROM的详细步骤,供您参考: 一、准备工作 准备一台可root的安卓手机,并确保手机已解锁bootloader。 在电脑上下载并安装ADB(Android De…

关于lamda表达式的使用

Lambda表达式是一种匿名函数,即没有函数名的函数,它可以以更简洁、更灵活的方式编写代码。以下是Lambda表达式的常用方式: 无参数,无返回值: 如果抽象方法不带参数且不返回值,可以使用空括号和主体编写Lambda表达式。例如:() -> System.out.println(“Hello, World!…

力扣(2024.06.18)

1. 39——组合总和 给你一个无重复元素的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有不同组合,并以列表形式返回。你可以按任意顺序返回这些组合。candidates 中的同一个数字可以无限制重复被选…

CentOS更新镜像源

0、背景 Linux下安装很多指令或者工具时,发现yum执行超时或者返回没找到有效的package,此时需要更新yum源 Yum(Yellowdog Updater Modified)是一种在 Linux 操作系统中用于软件包管理的工具 Yum 源就是存储那些软件包及其相关信息…

在 KubeSphere 上快速安装和使用 KDP 云原生数据平台

作者简介:金津,智领云高级研发经理,华中科技大学计算机系硕士。加入智领云 8 余年,长期从事云原生、容器化编排领域研发工作,主导了智领云自研的 BDOS 应用云平台、云原生大数据平台 KDP 等产品的开发,并在…

基因名写作的规范

基因名写作的规范通常会因物种和领域的不同而有所变化,但以下是一些通用的指导原则: 斜体表示基因名:在论文和其他科学文献中,基因名通常用斜体书写。例如,villin2 应该写作 villin2。 大小写: 对于真核生…

联邦学习周记|第四周

论文:Active Federated Learning 链接 将主动学习引入FL,每次随机抽几个Client拿来train,把置信值低的Client概率调大,就能少跑几次。 论文:Active learning based federated learning for waste and natural disast…

安装docker版mongodb 6并设置时区、容器内存大小

本文以mongodb6为例,讲解如何在Ubuntu22.04上的docker中安装mongodb6。 一、环境准备 系统 Ubuntu22.04 docker 26.1.4二、安装mongodb6 拉取镜像(下文都以root用户执行命令): docker pull mongo:6.0.6创建docker compose配置…

“Git之道:掌握常用命令,轻松管理代码“

目录 1. 初始化和配置 2. 提交和更新 3. 分支和合并 4. 查看和比较 5. 远程仓库 6. 文件操作命令 1. 初始化和配置 git init:在当前目录初始化一个新的Git仓库git config:配置Git的全局或局部选项git clone:从远程仓库克隆一个本地副本…

vue3第四十节(pinia的用法注意事项解构store)

pinia 主要包括以下五部分,经常用到的是 store、state、getters、actions 以下使用说明,注意事项,仅限于 vue3 setup 语法糖中使用,若使用选项式 API 请直接查看官方文档: 一、前言: pinia 是为了探索 vu…

微信小程序-路由和页面跳转API

一.wx.navigateTo wx.navigateTo是通过编程实现页面跳转,和navigator组件组件中,open-type"navigate"属性类似,是保留当前页面跳转新的页面,不适用tabbar页面。 //保留当前页面,跳转到非tabbar页面wx.navig…

动手学深度学习(Pytorch版)代码实践 -深度学习基础-11暂退法Dropout

11暂退法Dropout #Dropout 是一种正则化技术,主要用于防止过拟合, #通过在训练过程中随机丢弃神经元来提高模型的泛化能力。 import torch from torch import nn from d2l import torch as d2l import liliPytorch as lpdef dropout_layer(X, dropout):…

大数据—“西游记“全集文本数据挖掘分析实战教程

项目背景介绍 四大名著,又称四大小说,是汉语文学中经典作品。这四部著作历久不衰,其中的故事、场景,已经深深地影响了国人的思想观念、价值取向。四部著作都有很高的艺术水平,细致的刻画和所蕴含的思想都为历代读者所…

MySQL WHERE子句的使用和优化方法

MySQL是一种流行的关系型数据库管理系统,其中WHERE子句是用于过滤数据的重要部分。通过使用WHERE子句,可以根据指定的条件从表中选择特定的数据行。本文将总结MySQL WHERE子句的使用和优化方法,帮助读者更好地理解和应用WHERE子句&#xff0c…

0元体验苹果macOS系统,最简单的虚拟机部署macOS教程

前言 最近发现小伙伴热衷于在VMware上安装体验macOS系统,所以就有了今天的帖子。 正文开始 首先,鉴于小伙伴们热衷macOS,所以小白搜罗了一圈macOS系统,并开启了分享通道。 本次更新的系统版本是: macOS 10.13.6 ma…

【靶场搭建】-01- 在kali上搭建DVWA靶机

1.DVWA靶机 DVWA(Damn Vulnerable Web Application)是使用PHPMysql编写的web安全测试框架,主要用于安全人员在一个合法的环境中测试技能和工具。 2.下载DVWA 从GitHub上将DVWA的源码clone到kali上 git clone https://github.com/digininj…