Python中的模块包第三方库详解

模块&包

模块

一个.py文件就是一个模块,里面是一些函数和变量,需要的时候可以导入。

模块命名规范:

1.以英文开头,不出现中文

2.模块名不应与系统内置函数重名


包本身就是一个文件夹,如果文件夹内有__init__.py文件,我们就称之为包。

包的主要作用是将我们的模块进行分类管理,使项目结构更加清晰,也方便调用时导入。

init.py内会放一些需要初始化的数据,导入包时,init.py文件里的代码会立刻执行一次。(例如:一个操作数据库的包,就可以把我们’连接数据库服务器’和’登陆数据库’的操作放在__init__.py内,导入包时就会自动执行,然后就可以直接进行数据操作了)

常见的包结构

在这里插入图片描述

project_1使我们的项目文件

package1和login都是包

login属于package1的子包

包内的.py文件都是属于该包的模块

包里除了.py文件,也可以放其他类型的文件,例如yaml文件,txt文件等。

导入模块
导入模块的几种方式

1.import 模块名

1)导入同级目录下的模块–import 模块

我们在test1.py内写入代码

#test1.py
print('有人导入我了')

然后在test2.py内进行导入

#test2.py
import test1
#运行
>>>有人导入我了

2)导入上级目录下的模块–import 包.模块

我们在test3.py内写入代码

#\login\test3.py
print('我是test3')

然后在test2.py内进行导入

#test2.py
import login.test3
#运行
>>>我是test3

1、from 包 import 模块

我们在test3内写个函数

#\login\test3.py
def get_sum(a,b):
    return a+b

然后在test2.py内调用test3.py

#test2.py
from login import test3 as a
#as 给函数起个别名,可以解决导入多个模块时有同名模块的问题
print(a.get_sum(1,2))
#运行
>>>3

注:当模块处于多层子包内时,使用

‘import 包.包.包.模块’

‘from 包.包.包 import 模块’

调用即可

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

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

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

相关文章

安防摄像头(IPC)的步进马达及IR-CUT驱动国产芯片——D6212

应用领域 安防摄像头(IPC)的步进马达及IR-CUT驱动。 02 功能介绍 D6212内置8路带有续流二极管的达林顿驱动管阵列和一个H桥驱动,单芯片即可实现2个步进电机和一个IR-CUT的直接驱动,使得电路应用非常简单。单个达林顿管在输入电…

跨域报错(预请求(OPTIONS)的问题)

查原因 是预请求(OPTIONS)的问题 解决方法(后端改) 指路博客.NET处理VUE OPTIONS请求问题_.net option请求-CSDN博客

Latte:一个类似Sora的开源视频生成项目

前段时间OpenAI发布的Sora引起了巨大的轰动,最长可达1分钟的高清连贯视频生成能力秒杀了一众视频生成玩家。因为Sora没有公开发布,网上对Sora的解读翻来覆去就那么多,我也不想像复读机一样再重复一遍了。 本文给大家介绍一个类似Sora的视频生…

C++的类与对象(三)

目录 类的6个默认成员函数 构造函数 语法 特性 析构函数 特性 类的6个默认成员函数 问题:一个什么成员都没的类叫做空类,空类中真的什么都没有吗? 基本概念:任何类在什么都不写时,编译器会自动生成以下六个默认…

别再为微信登录烦恼!Xinstall的Universal Links让你秒速直达APP!

微信登录Universal Links校验不通过?无法直达APP场景页面?别担心,Xinstall来帮你解决这一难题! 随着移动互联网的迅猛发展,App已成为我们日常生活中不可或缺的一部分。而微信,作为拥有十亿用户的社交巨头…

STM32FreeRTOS信号量(STM32cube高效开发)

一、信号量 (一)信号量概括 信号量是操作系统中重要的一部分,信号量是一种解决同步问题的机制,可以实现对共享资源的有序访问。 FreeRTOS 提供了多种信号量,按信号量的功能可分为二值信号量、计数型信号量、互斥信…

FreeRTOS操作系统学习——FreeRTOS工程介绍

FreeRTOS工程介绍 核心文件 FreeRTOS的最核心文件只有2个: FreeRTOS/Source/tasks.cFreeRTOS/Source/list.c 文件功能如下图: 头文件相关 内存管理文件 文件在 Middlewares\Third_Party\FreeRTOS\Source\portable\MemMang 下,它也是放…

uniapp直接连接wifi(含有ios和安卓的注意事项)

前言 小程序中直接连接wifi-----微信小程序 代码 启动 //启动wifistartWifi() {return new Promise((resolve, reject) > {uni.startWifi({success: (res) > {console.log(启动wifi 成功, res)resolve(true)},fail: (err) > {console.error(启动wifi 失败, err)uni.s…

【教程】uni-app iOS打包解决profile文件与私钥证书不匹配问题

摘要 当在uni-app中进行iOS打包时,有时会遇到profile文件与私钥证书不匹配的问题。本文将介绍如何解决这一问题,以及相关的技术细节和操作步骤。 引言 在uni-app开发过程中,iOS打包是一个常见的操作。然而,有时会出现profile文…

SEMICON专题直播预告|一起聊聊半导体测试

2024年3月20日,全球最大规模半导体嘉年华——SEMICON China 2024将在上海新国际博览中心盛大启幕,作为半导体测试领域的领军企业,加速科技即将重装亮相此次盛会(N2馆N2327)。 在正式开展之前,加速科技将举…

2024年最受欢迎的15款缺陷管理工具

本文整理分享了15款再2024年受欢迎的bug(缺陷)跟踪管理工具:1.PingCode;2.Worktile;3.SpiraTeam;4. Jira Software;5. BugHerd;6. Zoho Projects;7.SmartSheet&#xff1…

腾讯云服务器5年优惠活动价格表(2核4G和4核8G)

腾讯云服务器网整理五年云服务器优惠活动 txyfwq.com/go/txy 配置可选2核4G和4核8G,公网带宽可选1M、3M或5M,系统盘为50G高性能云硬盘,标准型S5实例CPU采用主频2.5GHz的Intel Xeon Cascade Lake或者Intel Xeon Cooper Lake处理器,…

5G网络深度覆盖提升感知优化案例

随着5G业务的发展,用户感知尤为重要,随着人们的生活水平不断提高,对网络使用的要求也越来越高,用户感知更加重要,数据业务已超越语音业务成为流量和收入的主体,信号质量的决定作用更明显。5G TDD的频谱大带…

【CSP试题回顾】202203-2-出行计划

CSP-202203-2-出行计划 关键点:前缀和数组(高频考点) 详见:【CSP考点回顾】前缀和数组 解题思路 解法利用差分数组技巧,使得更新时间区间的操作和查询操作的时间复杂度都是 O(1),整体算法的时间复杂度主…

2024年最全洗地机选购攻略盘点丨希亦、小米、云鲸、海尔洗地机哪款值得入手?

在现代家居清洁中,洗地机是不可或缺的得力助手,它融合了吸尘、拖地等多种功能。面对市场上琳琅满目的洗地机品牌和型号,选择一个可靠的品牌至关重要。优质的品牌能够提供高品质的产品,使您的清洁工作更加轻松高效。本文将向您推荐…

基于多时间尺度的植被干旱响应特征与机制分析

随着全球气候变暖的趋势愈发明显,干旱事件不仅发生的频率增加,其持续时间和影响范围也在不断扩大。干旱对生态环境造成了严重破坏,导致生物多样性减少、土地退化和水资源短缺;对农业生产而言,干旱会导致作物减产甚至绝…

回溯算法04-组合总数(Java)

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

一张图串起来springcloud alibaba以及其他组件的作用,欢迎各位巨佬指正

一般来说,用一个gateway或者一个nginx应该够用,但是加上去好像也无妨 针对秒杀场景,有几种常见的解决方案: 基于Redis的缓存方案: 预热缓存:在秒杀开始前,将商品库存等信息提前加载到Redis缓存…

OSI七层模型/TCP四层模型

协议: 协议是双方共同指定的一组规则,在网络通信中表示通信双方传递数据和解释数据的一组规则。 从A上传文件到服务器B,需要在A和B之间制定一个双方都认可的规则,这个规则就叫文件传输协议,该协议是ftp协议的一个初级版本&#…

PySide6+VSCode Python可视化环境搭建

pip install pyside6 下载本期源码 vscode装一个PYQT Integration插件,设置好两个路径(下面有个脚本用于获取路径) 用everything的童鞋注意了:工具/选项/索引/强制重建 重启vscode可以看到,右击.ui文件时出现可以操作…