第四十八回 解珍解宝双越狱 孙立孙新大劫牢-Python模块和包概念与使用
吴用对宋江说,有个人,他是石勇的关系,与祝家庄的峦廷玉关系好,还是杨林、邓飞的老相识,他有一计....
原来在宋江攻打祝家庄的时间段,山东海边登州也发生了一件事。登州山下有一家猎户,弟兄两个,哥哥叫两头蛇解珍,弟弟叫双尾蝎谢宝。
一天谢珍谢宝打了一只老虎,老虎滚落到毛太公院子里。毛太公拒不承认,回头就把老虎抬到州里去拿赏钱了。谢珍谢宝找毛太公的儿子毛仲义理论,被诱到家里绑了,押解到州里。
谢珍谢宝被压到死囚牢,碰到了他们的大舅哥:铁叫子乐和。乐和去找小叔子孙新夫妻两个帮忙,小尉迟孙新又找来了出林龙邹润和独角龙邹渊叔侄两个来帮忙,大家决定一起去劫牢,劫完去梁山。

谢珍谢宝孙立孙新通过亲戚关系组成了一个小团体,同样python中模块和包是组织和管理的基石。
Python模块和包概念与使用
Python模块与包的关键概念
在Python编程中,模块和包是代码组织和管理的基石。以下是关于Python模块与包的核心要点:
模块:
- 模块是一个包含Python代码的.py文件,它可以定义函数、类、变量等。
- 通过导入模块,我们可以重用代码,将其组织成逻辑单元。
- Python标准库为我们提供了大量预构建的模块,涵盖从数学计算到文件操作再到网络通信的广泛功能。
- 我们还可以创建自定义模块,将相关的代码整合到一个文件中,并在其他项目或脚本中复用。
包:
- 包是一个包含多个模块的目录,它提供了一种组织代码层级结构的方式。
- 包内通常含有一个名为
__init__.py的特殊文件,这个文件的存在告诉Python该目录应被视为一个包。- 通过包,我们可以将相关的模块组合在一起,形成更大的功能单元,实现代码的模块化和封装。
导入模块和包:
- 使用
import语句,我们可以导入模块或包。例如,import math将导入Python标准库中的math模块。- 导入模块后,我们可以调用其内部定义的函数、类和变量。例如,
math.sqrt(16)将调用math模块中的sqrt函数。- 对于包,我们可以使用点号(
.)来访问其内部的模块。例如,import mypackage.mymodule将导入名为mypackage的包中的mymodule模块。避免命名冲突:
- 当导入多个模块或包时,可能会出现命名冲突。
- 为了避免这种情况,我们可以使用
as关键字为导入的模块或包指定一个别名。- 例如,
import math as m将math模块导入并为其指定别名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
孙新媳妇母大虫顾大嫂诈称孙新病危请来病尉迟孙立,让他也帮忙,最后是大伙儿都露出兵器,以理服人,孙立一看所有亲戚都参与了,也就只好跟着干了。
大家伙儿一起劫了牢,救出谢珍谢宝,星夜奔上梁山。来到石勇饭店,了解到宋江两次打祝家庄都失败了,大家决定贡献一计。孙立和峦廷玉是同一个师傅,可以里应外和拿下祝家庄。
吴用将这个计策告诉了宋江,宋江大喜。吴用说则个计策还需要梁山四个头领....
欲知后事如何,且听下回分解
相关文章:
第四十八回 解珍解宝双越狱 孙立孙新大劫牢-Python模块和包概念与使用
吴用对宋江说,有个人,他是石勇的关系,与祝家庄的峦廷玉关系好,还是杨林、邓飞的老相识,他有一计.... 原来在宋江攻打祝家庄的时间段,山东海边登州也发生了一件事。登州山下有一家猎户,弟兄两个…...
【Spring连载】使用Spring Data访问 MongoDB----对象映射之属性转换器
【Spring连载】使用Spring Data访问 MongoDB----对象映射之属性转换器 一、声明式值转换器二、编程式值转换器注册三、MongoCustomConversions配置 虽然基于类型的转换已经提供了影响目标存储中某些类型的转换和表示的方法,但当仅考虑特定类型的某些值或属性进行转换…...
【axiox】前后端接口通讯数据交互
重要全局配置: axios.create(); 设置axios请求的公共配置信息。 service.interceptors.request.use((config)>{}) 请求拦截器 service.interceptors.response.use((res)>{},(err)>{}) 响应拦截器 const source axios.CancelToken.source(); 用…...
《Linux C编程实战》笔记:共享内存
共享内存是分配一块能被其他进程访问的内存。每个共享内存段在内核中维护一个内部数据结构shmid_ds(和消息队列、信号量一样),该结构定义在头文件linux/shm.h中,这是我从源码里抄的 #include<linux/shm.h> struct shmid_ds {struct ipc_perm shm_perm; /* 操…...
【GitHub】修改默认分支
GitHub的默认分支为main,但我们常常习惯使用master作为默认分支,那在GitHub上如何将master修改为默认分支呢? 全局修改 点击头像,选择菜单栏中的设置 输入master作为默认分支,然后执行updating即可! 单项…...
常用Linux 命令汇总
1、基本命令 uname -m 显示机器的处理器架构 uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作系统信息 arch 显示机器的处理器架构 uname -m 显示…...
13 双口 RAM IP 核
双口 RAM IP 核简介 双口 RAM IP 核有两个端口,它又分为伪双端口 RAM 和真双端口 RAM,伪双端口 RAM 一个端口只能读,另一个端口只能 写,真双端口 RAM 两个端口都可以进行读写操作。同时对存储器进行读写操作时就会用到双端口 RAM…...
【高级数据结构】Trie树
原理 介绍 高效地存储和查询字符串的数据结构。所以其重点在于:存储、查询两个操作。 存储操作 示例和图片来自:https://blog.csdn.net/qq_42024195/article/details/88364485 假设有这么几个字符串:b,abc,abd&…...
国际化 Vue-i18n的安装与使用 (Vue2.0 / Vue3.0)
国际化 Vue-i18n的安装与使用 (Vue2.0 / Vue3.0) 一、Vue-i18n是什么? Vue-I18n是 Vue.js 的国际化插件。它可以轻松地将一些本地化功能集成到你的 Vue.js 应用程序中。简单来说就是可以帮助用户进行语言的切换” 二、使用步骤 1.引入库 代码…...
Linux 学习笔记(8)
八、 启动引导 1 、 Linux 的启动流程 1) BIOS 自检 2) 启动 GRUB/LILO 3) 运行 Linux kernel 并检测硬件 4) 挂载根文件系统 5) 运行 Linux 系统的第一个进程 init( 其 PID 永远为 1 ,是所有其它进程的父进程 ) 6) init 读取系统引导配置文件…...
【python】1.python3.12.2和pycharm社区版的安装指南
欢迎来CILMY23的博客喔,本篇为【python】1.python3.12.2和pycharm社区版的安装指南,感谢观看,支持的可以给个一键三连,点赞关注收藏。 目录 一、python3.12.2的下载与安装 1.1下载 1.2安装 二、pycharm的安装 2.1下载安装 2…...
Ubuntu将c++编译成.so文件并测试
一、准备cpp和h文件 创建test.cpp 在cpp中定义相加的函数funcAdd,给出函数的细节代码 #include <iostream> using namespace std;int funcAdd(int x, int y) {return xy; }创建test.h 在h中声明定义的函数,不需要任何细节 #ifndef __TEST__ #…...
数据分析-Pandas数据的探查面积图
数据分析-Pandas数据的探查面积图 数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律? 数据表&…...
美团分布式 ID 框架 Leaf 介绍和使用
一、Leaf 在当今日益数字化的世界里,软件系统的开发已经成为了几乎所有行业的核心。然而,随着应用程序的规模不断扩大,以及对性能和可扩展性的需求不断增加,传统的软件架构和设计模式也在不断地面临挑战。其中一个主要挑战就是如…...
Ubuntu20.04: UE4.27 中 Source Code 的编辑器下拉框没有 Rider选项
问题描述 最近想用 Rider 作为 UE4 开发的 IDE,但安装好 Rider 后,发现编辑器下拉框中没有 Rider 的选项,我检查了 UE4 的插件,发现 Rider Integration 插件已经安装且启用的。 环境:Ubuntu 20.04 UE4.27 Rider2023…...
【论文阅读-PRIVGUARD】Day4:3节
3 PRIVANALYZER:强制执行隐私政策的静态分析 本节介绍PRIVANALYZER,这是一个用于强制执行由PRIVGUARD追踪的隐私政策的静态分析器**。我们首先回顾LEGALEASE政策语言,我们使用它来正式编码政策,然后描述如何静态地强制执行它们**…...
新一代电话机器人开源PHP源代码
使用easyswoole 框架开发的 新一代电话机器人开源PHP源码 项目地址:https://gitee.com/ddrjcode/robotphp 代理商页面演示地址 http://119.23.229.15:8080 用户名:c0508 密码:123456 包含 AI外呼管理,话术管理,CR…...
dockerdocker-copose_限制容器cpu和内存
本文目录 docker的限制方式限制CPU占用限制内存占用 docker-compose docker的限制方式 限制CPU占用 Docker使用--cpus参数来限制容器的CPU资源。该参数指定了分配给容器的CPU核心数量或百分比。 例子:限制CPU使用个数 docker run --cpus2 <imageName>以上…...
【leetcode】圆圈中最后剩下的数字
目录 1. 问题 2. 思路 3. 代码 4. 运行 1. 问题 本题即为典型的约瑟夫问题,通过递推公式倒推出问题的解。原始问题是从n个人中每隔m个数踢出一个人,原始问题变成从n-1个人中每隔m个数踢出一个人…… 示例 1: 输入: n 5, m 3 输出: 3…...
利用python批量将.shp文件转换坐标生成.geojson文件,再将.geojson转换成.csv文件,最后将csv文件插入数据库表
第一步:.shp批量转.geojson # author: JMY # 创建时间: 2024/2/26 17:12 # 批量将.shp文件生成geojson文件并转换坐标为3857import os import geopandas as gpd# 定义输入和输出文件夹路径 input_folder shp文件 output_folder geojson文件# 定义输入和输出坐标系…...
高光谱成像基础(完)光谱融合(Spectral Fusion)镀
环境安装 pip install keystone-engine capstone unicorn 这3个工具用法极其简单,下面通过示例来演示其用法。 Keystone 示例 from keystone import * CODE b"INC ECX; ADD EDX, ECX" try: ks Ks(KS_ARCH_X86, KS_MODE_64) encoding, count ks.…...
最近顶级图像算法论文精读:CVPR 2025《MaIR》如何让 Mamba 更适合图像恢复?
最近顶级图像算法论文精读:CVPR 2025《MaIR》如何让 Mamba 更适合图像恢复? 摘要 最近看了一篇很值得分析的图像算法论文:MaIR: A Locality- and Continuity-Preserving Mamba for Image Restoration。这篇论文发表在 CVPR 2025,关…...
Python定时任务实战:让脚本自己跑起来
为什么需要定时任务? 手动执行脚本很麻烦?定时任务来帮你! 常见场景: 每天2点自动备份数据库 每小时抓取一次股票价格 每周一发送工作周报 每月1号生成月度报表 本文教你多种方式实现Python定时任务,让脚本自动化运行! 方案一:使用schedule库(推荐新手) 简介 sch…...
告别手动录入:椰羊cocogoat如何用AI技术革新原神圣遗物管理
告别手动录入:椰羊cocogoat如何用AI技术革新原神圣遗物管理 【免费下载链接】cocogoat-client A toolbox for Genshin Impact to export artifacts automatically. 支持圣遗物全自动导出的原神工具箱,保证每一行代码都是熬夜加班打造。 项目地址: http…...
nvitop深度解析:超越nvidia-smi的GPU监控革命方案
nvitop深度解析:超越nvidia-smi的GPU监控革命方案 【免费下载链接】nvitop An interactive NVIDIA-GPU process viewer and beyond, the one-stop solution for GPU process management. 项目地址: https://gitcode.com/gh_mirrors/nv/nvitop 在深度学习、科…...
《数论探微:进阶版》(Arithmetic Tales: Advanced Edition)伪
一、核心问题及解决方案(按踩坑频率排序) 问题 1:误删他人持有锁——最基础也最易犯的漏洞 成因:释放锁时未做身份校验,直接执行 DEL 命令删除键。典型场景:服务 A 持有锁后,业务逻辑耗时超过…...
第4篇 | 功能安全的底层悖论:AUTOSAR的安全机制真的足够安全吗?
ISO 26262要求ASIL C和D等级的系统必须检测:定时和执行故障、内存故障、信息交换故障。AUTOSAR 4.x提供了看门狗、E2E保护、内存分区等机制,但仍有盲区。 定时故障检测的盲区 AUTOSAR的Watchdog Manager可以监控任务是否“卡死”(长时间不喂狗),但它无法检测任务的无限期阻…...
linux命令的使用、bash命令的使用、ctrl+r查看历史记录、tee命令
文章目录字母表示的含义定位光标移动相关命令inputrc和ctrl退格键为什么不删除单词呢查看文件的实际路径mkdir 已存在目录会覆盖么linux 常用的颜色文件名有特殊符号的时候查看历史命令-history查看历史命令-ctrlrtee命令tee命令写内容tee命令只能替换不能追加吗?记录一些不好…...
如何永久保存微信聊天记录?WeChatMsg帮你打造个人专属的数字记忆库
如何永久保存微信聊天记录?WeChatMsg帮你打造个人专属的数字记忆库 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trend…...
KeymouseGo架构深度解析:跨平台自动化操作引擎的设计与实现
KeymouseGo架构深度解析:跨平台自动化操作引擎的设计与实现 【免费下载链接】KeymouseGo 类似按键精灵的鼠标键盘录制和自动化操作 模拟点击和键入 | automate mouse clicks and keyboard input 项目地址: https://gitcode.com/gh_mirrors/ke/KeymouseGo Key…...
