python中的模块_python3.0中重载模块
在python中,每一个以 .py结尾的Python文件都是一个模块。其他的文件可以通过导入一个模块来读取该模块的内容。导入从本质上来讲,就是载入另一个文件,并能够读取那个文件的内容。一个模块的内容通过这样的属性能够被外部世界使用。
这种基于模块的方式使模块变成了Python程序架构的一个核心概念。更大的程序往往以多个模块文件的形式出现,并且导入了其他模块文件的工具。其中的一个模块文件被设计成主文件,或叫做顶层文件(就是那个启动后能够运行整个程序的文件)。
默认情况下,模块在第一次被导入之后,其他的导入都不再有效。如果此时在另一个窗口中改变并保存了模块的源代码文件,也无法更新该模块。这样设计的原因在于,导入是一个开销很大的操作(导入必须找到文件,将其编译成字节码,并且运行代码),以至于每个文件、每个程序运行不能够重复多于一次。
那么想要使得Python在同一次会话中再次运行文件,该怎么办呢?这就需要调用imp标准库模块中的reload函数。如下所示
from imp import reload
reload(MyModule)
这样就可以重新装载MyModule模块,使得修改有效。
注意:reload函数希望获得的参数是一个已经加载了的模块对象的名称,所以如果在重载之前,请确保已经成功地导入了这个模块。
说明:Python 3.0把reload内置函数移到了imp标准库模块中。它仍然像以前一样重载文件,但是,必须导入它才能使用。在Python 3.0中,运行import imp并使用imp.reload(M),或者像上面所示的,运行from imp import并使用reload(M)。
0
顶
4
踩
分享到:
2011-07-03 22:21
浏览 4205
评论
python中的模块_python3.0中重载模块相关推荐
- python模块:命名空间与重载模块
文章目录 模块命名空间: 重载模块: #module2.py print('starting to load...') import sys name=42 def func():pass class ...
- python不同目录调用_python3 不同目录间模块调用
#Author by Andy #_*_ coding:utf-8 _*_ #__file__获取当前程序的相对路径 import os,sys #print(__file__) # os.path. ...
- python import ssl失败_Python3.7.5 ssl模块导入失败的解决办法
import _ssl # if we can't import it, let the error propagate ????ImportError: DLL load failed: 找不到指定 ...
- python print函数用法_Python3.2中Print函数用法实例详解
本文实例讲述了Python3.2中Print函数用法.分享给大家供大家参考.具体分析如下: 1. 输出字符串 >>> strHello = 'Hello World' >> ...
- python函数参数冒号_Python3 - 参数中的冒号和箭头
Python3.5 中新增了一个功能是类型提示(type hints) -冒号后面是建议传入的参数类型 箭头后面是建议函数返回的类型 如:def greeting(name: str) -> s ...
- python圆面积的计算_python3.6中计算圆的面积
今天根据一个如何计算圆形的面积展开对python 中变量的灵活运用进行彻底的大起底. 最简单的计算代码,比如我们需要计算半径是5毫米的圆的面积. 根据圆的面积公式s=pai*r*r 代码分享 prin ...
- python连接池框架_python3.0 django mysql连接池说明
使用python的django框架连接数据库,操作数据库代码: import logging from django.db import connection LOG = logging.getLog ...
- python画指数函数图像_Python3.0科学计算学习之绘图(一
基本绘图: (1) plot是标准的绘图库,调用函数plot(x,y)就可以创建一个带有绘图的图形窗口(其中y是x的函数).输入的参数为具有相同长度的数组(或列表):或者plot(y)是plot(r ...
- python安装flask模块_Python3.6 安装Flask 模块
Flask 简介: Flask 是一个轻量级的 Web 应用框架, 使用Python编写.基于WerkzeugWSGI工具箱和 Jinja2模板引擎.使用BSD 授权.Flask也被称为"m ...
最新文章
- jenkins-svn配置
- python3 print设置不换行
- 利用SSH端口转发功能实现X转发
- VHDL | 音乐盒设计(代码类)
- Requested resource=<memory:-1, vCores:1>问题解决
- 【复杂系统迁移 .NET Core平台系列】之静态文件
- Java静态方法与非静态方法的泛型
- JQuery文件上传控件Uploadify文档
- 当你的程序在朋友的机器上显示丢失msvcr100d.dll的时候
- BFC的布局规则以及触发条件
- androidstudio mac mini_苹果M1芯片笔记本能安装运行Android Studio和模拟器吗?能!
- 《零基础入门学习Python》学习过程笔记【016列表,元组,字符串的转化及共用技巧】...
- [编写高质量代码:改善java程序的151个建议]建议101 Class类
- mysql debug版本_MySQL各个版本区别
- android图片添加文字,android图片上添加文字
- win10系统安装+激活+去水印
- C语言typedef和define、字节对齐的问题
- Win10:电脑共享WIFI
- 开学季学生党需要准备哪些数码好物,分享几款实用的数码好物
- 编写微信聊天机器人3《聊天精灵WeChatGenius》:使用Xposed来hook微信,找到微信进程。
热门文章
- C语言之typedef定义函数指针(十三)
- 机器学习入门(二):工具与框架的选择
- 红茶一杯话Binder(初始篇)
- 结合源码探讨Android距离传感器亮灭屏机制
- mqtt之C++编译
- 笔记3:Tensorflow2.0实战之MNSIT数据集
- LNMP环境下搭建SVN服务器
- 自己动手Centos7搭建wordpress网站步骤(LNMP+wordpress)
- python 中文乱码_python 解决cv2绘制中文乱码问题
- elasticsearch_spring-data-elasticsearch 快速入门-Spring Boot+Elasticsearch