第四十八回 解珍解宝双越狱 孙立孙新大劫牢-Python模块和包概念与使用

吴用对宋江说,有个人,他是石勇的关系,与祝家庄的峦廷玉关系好,还是杨林、邓飞的老相识,他有一计....

原来在宋江攻打祝家庄的时间段,山东海边登州也发生了一件事。登州山下有一家猎户,弟兄两个,哥哥叫两头蛇解珍,弟弟叫双尾蝎谢宝。

一天谢珍谢宝打了一只老虎,老虎滚落到毛太公院子里。毛太公拒不承认,回头就把老虎抬到州里去拿赏钱了。谢珍谢宝找毛太公的儿子毛仲义理论,被诱到家里绑了,押解到州里。

谢珍谢宝被压到死囚牢,碰到了他们的大舅哥:铁叫子乐和。乐和去找小叔子孙新夫妻两个帮忙,小尉迟孙新又找来了出林龙邹润和独角龙邹渊叔侄两个来帮忙,大家决定一起去劫牢,劫完去梁山。

谢珍谢宝孙立孙新通过亲戚关系组成了一个小团体,同样python中模块和包是组织和管理的基石。

Python模块和包概念与使用

Python模块与包的关键概念

在Python编程中,模块和包是代码组织和管理的基石。以下是关于Python模块与包的核心要点:

  1. 模块

    • 模块是一个包含Python代码的.py文件,它可以定义函数、类、变量等。
    • 通过导入模块,我们可以重用代码,将其组织成逻辑单元。
    • Python标准库为我们提供了大量预构建的模块,涵盖从数学计算到文件操作再到网络通信的广泛功能。
    • 我们还可以创建自定义模块,将相关的代码整合到一个文件中,并在其他项目或脚本中复用。
    • 包是一个包含多个模块的目录,它提供了一种组织代码层级结构的方式。
    • 包内通常含有一个名为__init__.py的特殊文件,这个文件的存在告诉Python该目录应被视为一个包。
    • 通过包,我们可以将相关的模块组合在一起,形成更大的功能单元,实现代码的模块化和封装。
  2. 导入模块和包

    • 使用import语句,我们可以导入模块或包。例如,import math将导入Python标准库中的math模块。
    • 导入模块后,我们可以调用其内部定义的函数、类和变量。例如,math.sqrt(16)将调用math模块中的sqrt函数。
    • 对于包,我们可以使用点号(.)来访问其内部的模块。例如,import mypackage.mymodule将导入名为mypackage的包中的mymodule模块。
  3. 避免命名冲突

    • 当导入多个模块或包时,可能会出现命名冲突。
    • 为了避免这种情况,我们可以使用as关键字为导入的模块或包指定一个别名。
    • 例如,import math as mmath模块导入并为其指定别名m,之后可以使用m.sqrt(16)来调用sqrt函数。

理解并熟练运用模块与包的概念,可以帮助我们构建更加清晰、可维护和可扩展的Python代码结构。

将文件夹加入到sys.path以便导入

比如自己手工写的一些小函数,可以放到/home/aistudio/work目录,然后将该文件夹加入到sys.path, 就可以自由的调用work目录里的包或者文件了。

# /home/aistudio/work/my_module.py  
  
def hello_world():  
    print("Hello, World!")

将work目录添加到sys.path并调用:

import sys  
  
# 将 /home/aistudio/work 添加到 sys.path  
work_dir = '/home/aistudio/work'  
if work_dir not in sys.path:  
    sys.path.append(work_dir)  
  
# 现在可以导入 /home/aistudio/work 下的模块了  
import my_module  
  
# 调用 my_module 中的函数  
my_module.hello_world()

删除或重新加载模块

可以直接使用del来删除已经导入的模块。比如上面的例子,如果我们执行del my_module ,那么再执行my_module.hello_world()就会报错:

name 'my_module' is not defined

这样再重新导入即可再次加载模块。

也可以使用imp进行模块的重新加载

import my_module
import imp
imp.reload(my_module)
my_module.hello_world()

导入子目录或上级目录

跟控制台/命令行路径操作相似,在python中使用'.'表示当前目录, '..'表示上级目录,因此可以这样分别导入上级/本目录和下级目录的库:

# 导入上级模块,假设为../up_module.py文件
import sys  
sys.path.append('..')  # 添加上级目录到 sys.path  
import up_module

# 导入本目录模块,假设为本目录my_module.py文件
import my_module

# 导入子目录模块,假设为fun1/my_module.py文件
import fun1.my_module

孙新媳妇母大虫顾大嫂诈称孙新病危请来病尉迟孙立,让他也帮忙,最后是大伙儿都露出兵器,以理服人,孙立一看所有亲戚都参与了,也就只好跟着干了。

大家伙儿一起劫了牢,救出谢珍谢宝,星夜奔上梁山。来到石勇饭店,了解到宋江两次打祝家庄都失败了,大家决定贡献一计。孙立和峦廷玉是同一个师傅,可以里应外和拿下祝家庄。

吴用将这个计策告诉了宋江,宋江大喜。吴用说则个计策还需要梁山四个头领....

欲知后事如何,且听下回分解

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux下进程相关概念详解

目录 一、操作系统 概念 设计操作系统的目的 定位 如何理解“管理” 系统调用和库函数概念 二、进程 概念 描述进程—PCB(process control block) 查看进程 进程状态 进程优先级 三、其它的进程概念 一、操作系统 概念 任何计算机系统都包…

HPE ProLiant MicroServer Gen8更换坏硬盘(RAID 1+0)

HPE ProLiant MicroServer Gen8今天硬盘告警,坏了一块硬盘(估计还是由于上次突然断电导致的),关机,拆下坏硬盘,更换新硬盘,开机后按了一次F1键,系统继续启动并正常使用,同…

VueCli的安装与卸载

文章目录 一.Node安装包的报读网盘提取码二、Vue脚手架Cli三、Vue-CLI使用步骤(自定义安装)1.转换路径并创建项目2.创建步骤的解释(保姆级)3.等待vue项目自己创建好(保姆级) 四、通过npm对vue的安装与卸载 一.Node安装包的报读网盘提取码 下面的链接为地址: Node的百度网盘提取…

面试准备:排序算法大汇总 C++

排序算法总结 直接插入排序 取出未排序部分的第一个元素&#xff0c;与已排序的部分从后往前比较&#xff0c;找到合适的位置。将大于它的已排序的元素向后移动&#xff0c;将该元素插入到合适的位置。 //1. 直接插入排序 void InsertionSort(vector<int>& nums){f…

#WEB前端(HTML属性)

1.实验&#xff1a;a,img 2.IDE&#xff1a;VSCODE 3.记录&#xff1a; a: href插入超链接 默认情况下在本窗口打开链接, target可以设置打开的窗口,parent在父窗口打开&#xff0c;blank新开串口打开,top在顶层串口打开,self为默认在本窗口打开 img: 插入图片 可以插…

走进SQL审计视图——《OceanBase诊断系列》之二

1. 前言 在SQL性能诊断上&#xff0c;OceanBase有一个非常实用的功能 —— SQL审计视图(gv$sql_audit)。在OceanBase 4.0.0及更高版本中&#xff0c;该功能是 gv$ob_sql_audit。它可以使开发和运维人员更方便地排查在OceanBase上运行过的任意一条SQL&#xff0c;无论这些SQL是成…

基于 Amazon EKS 的 Stable Diffusion ComfyUI 部署方案

01 背景介绍 Stable Diffusion 作为当下最流行的开源 AI 图像生成模型在游戏行业有着广泛的应用实践&#xff0c;无论是 ToC 面向玩家的游戏社区场景&#xff0c;还是 ToB 面向游戏工作室的美术制作场景&#xff0c;都可以发挥很大的价值&#xff0c;如何更好地使用 Stable Dif…

Day10:基础入门-HTTP数据包Postman构造请求方法请求头修改状态码判断

目录 数据-方法&头部&状态码 案例-文件探针 案例-登录爆破 工具-Postman自构造使用 思维导图 章节知识点&#xff1a; 应用架构&#xff1a;Web/APP/云应用/三方服务/负载均衡等 安全产品&#xff1a;CDN/WAF/IDS/IPS/蜜罐/防火墙/杀毒等 渗透命令&#xff1a;文件…

数字图像处理 SUJOY滤波器:用于图像边缘检测的通用一阶导数滤波器

1、前言 因为是比较旧的论文,但是据论文作者说SUJOY滤波器为图像边缘检测提供了比其他常用的一阶导数方法(如 Robert 算子、Prewitt 算子、Sobel 算子等)更好的方法。 经过测试感觉并没有作者说的那么好,很水的东西,另外图像领域的事情很少有绝对的,通常都是某些方法适合…

【二分】第k个缺失的数

第K个缺失的数 链接 . - 力扣&#xff08;LeetCode&#xff09;. - 备战技术面试&#xff1f;力扣提供海量技术面试资源&#xff0c;帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/kth-missing-positive-number/ 题目 题解 二段…

医学大数据|文献阅读|有关“胃癌+机器学习”的研究记录

目录 1.基于32基因特征构建的机器学习模型可有效预测胃癌患者的预后和治疗反应 2.胃癌患者术后90天死亡率的机器学习风险预测模型 3.使用机器学习模型预测幽门螺杆菌根除患者胃癌患病风险 4.利用初始内窥镜检查和组织学结果进行个性化胃癌发病率预测 1.基于32基因特征构建的…

ABAP - SALV教程07 斑马纹显示和SALV标题

SALV设置斑马纹和标题 METHOD set_layout.DATA: lo_display TYPE REF TO cl_salv_display_settings. * 取得显示对象lo_display co_alv->get_display_settings( ).* 设置ZEBRA显示lo_display->set_striped_pattern( X ). * 设置Titlelo_display->set_list_he…

探讨倒排索引Elasticsearch面试与实战:从理论到实践

在当前大数据时代&#xff0c;Elasticsearch&#xff08;以下简称为ES&#xff09;作为一种强大的搜索和分析引擎&#xff0c;受到了越来越多企业的青睐。因此&#xff0c;对于工程师来说&#xff0c;掌握ES的面试准备和实战经验成为了必备技能之一。本文将从ES的面试准备和实际…

【MCAL】TC397+EB-tresos之CAN配置实战 - (CAN/CANFD)

本篇文章介绍了在TC397平台使用EB-tresos对CAN驱动模块进行配置的实战过程,不仅介绍了标准CAN的发送与接收&#xff0c;还介绍了CANFD的实现与调试以及扩展帧的使用。M_CAN是德国博世公司开发的IP&#xff0c;因为英飞凌的芯片完整的集成了这个IP&#xff0c;所以整体的配置都比…

leetcode 热题 100_三数之和

题解一&#xff1a; 双指针遍历&#xff1a;暴力解法的三层遍历会超时&#xff0c;因此需要优化遍历的过程。首先是需要对结果进行去重&#xff0c;这里采用排序跳过重复值的做法&#xff0c;在指针遍历时跳过已经遍历过的相同值。在第一层循环确定第一个值后&#xff0c;剩下两…

【RT-Thread基础教程】邮箱的使用

文章目录 前言一、邮箱的特性二、邮箱操作函数2.1 创建邮箱创建动态邮箱创建静态邮箱 2.2 删除邮箱2.3 发邮件2.4 取邮件 三、示例代码总结 前言 RT-Thread是一个开源的实时嵌入式操作系统&#xff0c;广泛应用于各种嵌入式系统和物联网设备。在RT-Thread中&#xff0c;邮箱是…

阶跃信号与冲击信号

奇异信号&#xff1a;信号与系统分析中&#xff0c;经常遇到函数本身有不连续点&#xff08;跳变电&#xff09;或其导函数与积分有不连续点的情况&#xff0c;这类函数称为奇异函数或奇异信号&#xff0c;也称之为突变信号。以下为一些常见奇异函数。 奇异信号 单位斜变信号 …

java-ssm-jsp-宠物护理预定系统

java-ssm-jsp-宠物护理预定系统 获取源码——》公主号&#xff1a;计算机专业毕设大全

xxl-job--01--简介

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 1.xxl-job1. 1 发展历史1.2 XXL-JOB的系统架构1.3 xxl-job与其他框架对比 2. XXL-JOB的使用2.1 准备工作- 配置调度中心XXL-JOB的数据表 2.2 配置执行器1 引入依赖包…

一个脚本两步计算材料Raman谱(附数据处理和绘图脚本)

在以往推送中已经介绍了相当多的计算材料Raman的方法&#xff0c;使用的软件主要为Phonopy-Spectroscopy&#xff0c;相关软件还有vasp&#xff0c;phonopy&#xff0c;phono3py等。 Phonopy-Spectroscopy计算材料红外和Raman光谱 Phonopy-Spectroscopy 计算红外和拉曼光谱 也…