Python模块详细介绍
文章目录
- 一、模块介绍
- 二、导入模块的基本格式
- 三、两种格式的优缺点
- 四、补充知识
- 五、循环导入问题
- 六、判断文件类型
- 七、模块的查找顺序
一、模块介绍
1.如何理解模块模块可以看成一个完整的功能非常强的大代码体 使用了模块就相当于你也有这个功能了使用模块编程就相当于站在巨人的肩膀上(智能语音 人工智能机器学习......)2.模块分类1>.内置模块内置模块就是python自带的可以直接调用的模块eg:import timetime.sleep(3) 让计算机等待三秒再运行2>.自定义模块自定义模块肯定就是自己写出来的模块了eg: 注册功能 登录功能......3>.第三方模块第三方就是大佬们将已经写好了的发布在网上我们之间直接CV战士即可eg: 图像识别 图形可视化 语音识别3.模块的表现形式1>.py文件(py文件也可以称之为是模块文件)2>.含有多个py文件的文件夹(按照模块功能的不同划分不同的文件夹存储)3>.已被编译为共享库或DLL的c或C++扩展(了解)4>.使用C编写并链接到python解释器的内置模块(了解)
二、导入模块的基本格式
基本格式1 import句式 import LebronJames 导入LBpy文件print(LebronJames.point) 通过句点拿到LB里面的变量名print(LebronJames.read1) 通过句点拿到LB里面的变量名LebronJames.read1() 通过句点拿到LB里面的函数调用基本格式2 from...import...句式from LebronJames import point 指名道姓的导入point变量名print(point) 不用通过句点即可直接使用point = 62323 新建一个变量名pointprint(point) 这时候就是62323了把之前的关系断了
三、两种格式的优缺点
import优点:可以通过md句点方式使用到模块里面所有的名字 并切不会冲突缺点:md什么都可以点 有时候并不想让所有的名字都能被使用from....import优点:可以指定出自己想要的那单独一个名字 不用添加md前缀缺点:名字及其容易产生冲突(绑定关系被修改)
四、补充知识
1.重命名1>.当导入多个模块名字冲突的时候import LebronJames as LB通过 后面加上as和新的名称即可直接句点调用from LebronJames import point as LB也是通过后面加上as新的名称就可以直接调用2>.原有的模块文件名太长复杂可读性不强import LBLBLBLBLBLB as LB通过 后面加上as和新的名称即可直接句点调用2.导入多个名字1>.import LB,point,read1,read2方式1建议多个模块功能相同功能才能适应 不相似尽量分开导入import either 其他功能模块2>.from LB import point,read1,read2方式二导入方式是推荐使用的 因为多个名字出自于一个模块文件3.全导入需要使用模块名称空间中很多名字 并且只能使用from...import句式from LebronJames import * *表示所以名字ps:针对*号的导入还可以控制名字的数量在模块文件中可以使用__all__ = [字符串的名字]控制*能够获取的名字控制名称仅限制*号全部的模式下使用
五、循环导入问题
1.如何理解循环导入循环导入就是两个文件彼此导入对方的名字2.循环导入容易出现报错现象使用彼此的名字可能是在没有准备好的情况下就使用了3.如何解决循环导入保存现象在调用彼此的名字之前就定义好名字 相当于函数 先定义后调用的原理
六、判断文件类型
所有的py文件中都自带一个__name__内置名当py文件是执行文件的时候 __name__的结果是__main__当py文件是被导入文件的时候 __name__的结果是模块名(文件名)
七、模块的查找顺序
1.导入一个文件 然后在导入过程中删除该文件 发现还可以使用import LebronJames 导入文件 import time 导入时间模块time.sleep(15) 等待15秒在运行print(LebronJames.point) 打印LB里面的point'''该过程中删除了文件 但是结果还是不报错 如果再来一次 就会报错了 '''2.创建一个跟内置模块名相同的文件名import time 导入时间模块print(time.time()) 获取当前时间戳from time import name 导入相同的名字print(name) '''如果命名跟原本内置的模块一样则最终结果报错 所以禁忌取相同的名称'''3.导入模块的时候一定要知道谁是执行文件 所有的路径都是参照执行文件来的 当我们模块内容不在一个层级里面 我们可以使用添加路径来寻找即可import syssys.path.append(r'/Users/macbookpro/PycharmProjects/import/LebronJames.py')import LebronJamesprint(LebronJames.point)4.主要查找顺序先从内存空间中查找>>>再从内置模块中查找>>>最后取sys.path查找相当于我们之前学习的环境变量 如果上述三个地方都找不到 那么就会之直接报错
Python模块详细介绍相关推荐
- oracle订单,银科软件:Oracle ERP订单管理模块详细介绍
原标题:银科软件:Oracle ERP订单管理模块详细介绍 Oracle® 订单管理使用户能够通过更有效的客户服务.更个性化的产品和更有利的价格制定和订单履行抢先利用日益发展的国际互联网去销售和让客户 ...
- RapidScada免费开源Scada组态软件系列教程4-各模块详细介绍
RapidScada免费开源Scada组态软件系列教程 系列文章目录 RapidScada免费开源Scada组态软件系列教程1-初识RapidScada RapidScada免费开源Scada组态软件 ...
- 超声波模块详细介绍(stm32循迹小车中超声波的介绍)
超声波模块详细介绍(stm32循迹小车中超声波的介绍) 超声波模块是非常重要的一个模块,今天给大家全面介绍一下超声波模块的原理以及用法,代码的编写. 1 超声波模块的认识 首先,市面上的常见超声波模块 ...
- (待完善)python模块scipy介绍(misc)
(待完善)python模块scipy介绍(misc) scipy模块简介 SciPy是建立在Python的NumPy扩展上的数学算法和高级函数的集合.它通过向用户提供高级命令和类来操作和可视化数据,为 ...
- 1分钟搞懂MIL体系架构及功能模块详细介绍
目录 MIL体系架构 MIL核心功能模块 MIL功能模块详细描述 点对点运算 统计学运算 滤波处理 形态学运算 几何变换 快速傅里叶变换 图像分割 粒子(BLOB)分析 特征计算 图像测量 校正 JP ...
- python Pyside2模块详细介绍(一)
文章目录 一.基础篇 1.Python图形界面开发的几种方案 2.PySide2.PyQt5 简介 3.安装 PySide2 4.安装PyQt5 5.配置Pycharm 1)自定义 QtDesigne ...
- Python图像处理PIL各模块详细介绍
转载博客:https://blog.csdn.net/zhangziju/article/details/79123275 Image模块是在Python PIL图像处理中常见的模块,对图像进行基础操 ...
- pythoncv2模块详细介绍_【Opencv】【Python】Python中opencv模块cv2一些函数用法及简介...
前言 最近在做卡片上的数字识别.调用caffe模块,直接用的mnist模型,不过这篇文章不讲caffe. 需要先对图片进行一系列预处理,把卡片上的数字分离出来,有点OCR的感觉. 我把这次使用到的所有 ...
- 【Pillow模块】Python Pillow模块详细介绍
最新文章
- mongodb php 存储文件大小,PHP MongoDB GridFS 存储文件的方法详解
- python随机抽号_随手小代码——Python 从集合中随机抽取元素
- VS2012设置断点的方法
- 图像锐化算法(Image sharpening):拉普拉斯增强和Unsharp Masking(附代码)
- 异步编程Promise、Generator和Async
- Luogu1515 青蛙的约会
- AIX详细查看用户/进程使用内存
- 台达伺服ASD-B2的调试
- 如何用matlab画北极熊,简笔画:如何使用Flash绘制北极熊,值得收藏
- WPF UI工具Snoop的用法
- Orz这个词的复杂意思[z]
- 数据库sql语句面试题
- 谷雨,这么美的公众号图文排版你见过吗?
- IME输入法编程:第一章 Windows9x系统下汉字输入法的基本原理
- R语言缺失值:is.na函数查看数据对象中是否包含缺失值NA、特定数据编码为编码为缺失值NA、na.rm=TRUE参数获得有效的计算结果、complete.cases函数筛选数据、na.omit函数
- [IOS APP]大唐雷音寺
- 利用Python绘制一个爱心
- Linux下的FireBird安装
- Linux系统怎么安装鲁大师,windows电脑下怎么安装苹果系统?
- 如何在ex表格导入php_phpexcel导入excel数据使用方法实例
热门文章
- 【学习笔记-opencv透视变换】点的透视变换和图像透视变换
- TIMI游戏工作室开发测试流程
- 政务服务中心工作人员是公务员吗?
- Dubbo2.7文档详解
- Socket传输信息或文件
- Ubuntu16.04下Python程序出现错误qt.qpa.plugin: Could not load the Qt platform plugin xcb解决方法
- OVS DPDK与QEMU之间如何通过vhost user协议通信 vhost user协议的控制和数据通道
- 过度拟合_过度拟合和尺寸缩减的过度拟合的最终指南
- 小班语言游戏教案%3c我的五官%3e,小班语言教案《我的五官》三篇
- 2022年的职称你通过了吗