定义:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀。

一、模块注意:

1.所有的模块都应该自觉的往上写

2.调用模块的时候都是最先在本地找

3.写模块的顺序是:内置模块-->扩展模块-->自定义模块

注意事项

二、模块的几种写法:

import:
1.import 模块名    调用:模块名.变量名         # 这种方式和本文件中的变量名完全不冲突

2.import 模块名 as 重命名的模块名            # 提高代码的兼容性

3.import 模块1,模块2

import导入方式

from import:
1.from 模块名 import 变量名              #直接使用 '变量名()' 就可以完成操作 如果本文件中有相同的变量名会发生冲突2.from 模块名 import 变量名字 as 重命名变量名
3.from 模块名 import 变量名1,变量名2
4.from 模块名 import * #模块中的所有变量名都放到内存中 # 如果本文件中有相同的变量名会发生冲突
5.from 模块名 import * 和 __all__ 是一对
# 没有这个变量,就会导入所有的名字
# 如果有all 只导入all列表中的名字

from import 导入方式

# __name__
# 在模块中 有一个变量__name__,
# 当我们直接执行这个模块的时候,__name__ == '__main__'
# 当我们执行其他模块,在其他模块中引用这个模块的时候,这个模块中的__name__ == '模块的名字'
三、模块执行过程
文件
import demo
def read():
print('my read func')
demo.read()
print(demo.money)
先从sys.modules里查看是否已经被导入
如果没有被导入,就依据sys.path路径取寻找模块
找到了就导入
创建这个模块的命名空间
执行文件,把文件中的名字都放到命名空间里

模块判断执行过程

												

最新文章

  1. 使用VS+VisualGDB编译调试Linux程序
  2. hibernate学习(5)——多对多关系映射
  3. spring mvc CommonsMultipartResolver上传文件异常处理
  4. 简单5步说清App软件在线开发、App制作多少钱?
  5. eclipse workspace 共享配置文件
  6. Mac上安装brew
  7. Robotium--takeScreenshot(截图)
  8. AJAX - 创建 XMLHttpRequest 对象
  9. JAVA学习 分析Servlet
  10. EasyUI 日期选择插件封装成选择到月份的插件
  11. iOS中利用UISearchBar实现搜索
  12. xcode8.3 shell 自动打包脚本 记录
  13. LeetCode 167. Two Sum II - Input array is sorted (两数之和之二 - 输入的是有序数组)
  14. extr_shopping
  15. Jfinal启动源码解读
  16. CSS中编写省略号代码片段
  17. Linux 内核配置机制(make menuconfig、Kconfig、makefile)讲解
  18. 【学习】如何安装GraphLab Create 【转载】
  19. Apache Traffic Server
  20. 【mac】ansible安装及基础使用

热门文章

  1. Jackson读取列表
  2. vue 使用pug(详细说明)
  3. Python大小写转换
  4. Spring mvc的执行流程
  5. git 分支相关操作
  6. java笔试常见的选择题
  7. Tmux 简单配置使用
  8. vue-cli 3.0版本,配置代理Proxy,不同环境不同target(生产环境,uat环境和本地环境的配置)
  9. shell脚本编写监控内存并发送邮件
  10. Vue学习笔记【4】——Vue指令之v-on