python函数模块概念_python中模块和包的概念
1.模块
一个.py文件就是一个模块。这个文件的名字是:模块名.py。由此可见在python中,文件名和模块名的差别只是有没有后缀。有后缀是文件名,没有后缀是模块名。
每个文件(每个模块)都是一个独立的名称空间,也就是说可以在两个(多个)文件中出现同名的函数。
import,from.....import...两种导入的区别:
1.import
按模块区分拥有独立的命名空间,要是想使用模块中的函数需要使用 模块名.函数名 的方式来使用。
可以使用import.....as....为导入的模块起一个别名,在使用这个模块中的函数时,可以使用 别名.函数名。
2.from.....import...
将模块的内容导入到当前的命名空间中,直接使用名字就行。
如果,被导入的模块和当前的文件中有同名的函数,那么后者将会覆盖前者。
什么意思呢?
这个时候就要看from.....import... (from后面跟的是模块名,import后面跟的是具体的函数名,或是模块中具体的变量名等)出现的位置了,如果出现在当前模块函数之前,那么当前模块的函数会覆盖导入的函数,如果出现在当前函数定义之后,那么导入的函数会覆盖当前模块中的函数。
from.....import......可以接受as为导入的函数或是变量起别名,同样可以导入多个函数、变量等。
from......import * 不建议使用这个方式导入模块,可能覆盖之前同名的函数等(这种方式不会导入以_开头的变量或函数)。
3.共同点
python中不支持重新加载或卸载之前的导入的模块,因此如果修改被导入的模块,需重新启动python程序或者是使用重新加载语句来实现 import importlib; importlib.reload(modulename) 。
当一个模块被导入时,他的全局变量名__name__ 为模块名,当这个模块当做脚本执行时,全局变量名__name__为 __main__。
模块的查找顺序:内存中已经加载的模块->内置模块->sys.path路径中包含的模块。(所以我们自己开发模块时,注意不要和已有的模块名重复)
2.包
包的本质就是一个包含__init__.py文件的目录。是一种通过使用‘.模块名’来组织python模块名称空间的方式,也就是说在在导入包时遇到带 点 的,这就是关于包的导入语法。
导入包,本质上是导入了包中的__init__.py文件。
包的导入形式也有,import 和 from.....import......两种形式。
3.提示
import * 会导入除了以 _ 开头的所有变量,但是如果定义了 __all__,那么会导入 __all__ 中列出的东西。
__all__是模块中的全局变量,列表
参考:https://www.cnblogs.com/bandaobudaoweng/p/10800864.html
python函数模块概念_python中模块和包的概念相关推荐
- python中模块的概念_Python中模块的概念
""" 模块搜索顺序 sys.path 查看搜索顺序 """ """ 编程语言中,库.包.模块是同一种概念,是 ...
- python中的模块调用_Python中模块互相调用的例子
Python中模块互相调用容易出错,经常是在本地路径下工作正常,切换到其他路径来调用,就各种模块找不到了.解决方法是通过 __file__ 定位当前文件的真实路径,再通过 sys.path.appen ...
- python函数自定义教程_Python中自定义函数的教程
在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回. 我们以自定义一个求绝对值的my_abs函数 ...
- python函数**什么意思_python中函数的参数是什么意思
本文主要讲解python中函数的参数及参数的类型 默认参数def enroll(name, gender, age=6, city='Beijing'): print('name:', name) p ...
- python 函数参数注释_Python中函数添加注释 如何正确的为函数添加注释说明
在前面鳄鱼君对Python的注释只是简单的提示一下,没有详细说明,在这片文章中会对Python中的一些注释方法进行说明,它非常重要. 在Python中单行注释和多行注释非常的简单: Python中文编 ...
- python函数的定义域_python中多线程的变量定义域问题
最近遇到了一个还算常见的错误提示:local variable 'xxx' referenced before assignment 字面上的意思就是该变量在引用前还未定义,于是我去代码里找到了这个变 ...
- python函数返回值_Python中函数的返回值示例浅析
前言: 前面我们介绍了简单的介绍了函数和函数的参数,今天我们来说一下Python中函数的返回值. 函数的返回值:函数运算的结果,需要进一步的操作时,给一个返回值return用来返回函数的结果,如果没有 ...
- python函数isdisjoint方法_Python中的isdisjoint()函数
在本文中,我们将学习如何在set()数据类型上实现isdisjoint()函数.此函数检查作为参数传递的集合是否具有任何共同的元素.如果找到任何元素,则返回False,否则返回True. 除了设置输入 ...
- python函数默认参数_Python中函数的默认参数问题
前几天,运营反馈了一个BUG,某些数据在写入数据库后,其时间字段出现异常,与当前时间相差较多. 由于代码是不是我写的,所以开始一遍阅读代码一遍排查问题. 在主流程中,仅仅发现了一个对时间赋值的语句,并 ...
最新文章
- 【组队学习】【28期】Datawhale组队学习内容介绍
- 浙大首届AI专业本科生将于9月入学,纳入竺院图灵班
- Day 3: Flask —— 使用Python和OpenShift进行即时Web开发
- 特征工程的宝典-《Feature Engineering for Machine Learning》翻译及代码实现
- Centos 7 配置 NFS
- Hegic Q1报告:TVL接近6000万美元,日交易量达2200万美元创新高
- MSSQLSERVER数据库- 使用C#来操作事务[转]
- Django 创建超级用户
- Python基础知识笔记(二)
- IDEA从零到精通(29)之chinese中文汉化插件
- 【遗传算法】基于改进的遗传和粒子群算法求解高斯烟羽模型气体扩散优化问题含Matlab源码
- UDP中recvfrom函数与sendto函数分析
- python控制电机正反转_树莓派Python控制步进电机
- Java web项目中获取WebRoot目录下的文件
- 多节点部署执行定时任务选举单一节点解决方案---redis
- Springboot 集成 Camunda
- Matlab学习报告 20-12-08
- win10应用及应用商店闪退有效解决办法
- 小马哥-----高仿苹果6s plus刷机拆机主板型号Q39主板图与开机界面图 分版本
- 设置jsp打开的默认方式