python记录day24 模块的语法
使用模块的两种方式:
import xxx
from xxx import xxx
使用模块的优点:
1、实现代码的重用
2、可以把代码分类
一、import
导入模块的时候系统会做三件事
1、先去sys.modules中查看当前导入的模块是否已经被导入,如果已经导入不会重复导入
2、开辟一个内存空间,在该空间执行一遍模块中的代码
3、给该空间一个名称,把名称引入到当前模块中
#在模块中使用global
global表示把全局变量引入到局部,但是,这个全局指的是一个py文件内,所以,如果a文件引入了模块b(b文件),在a文件通过global操作不会改变引入的b模块的内容,他们是两个不同的全局空间,而要想改变b模块的内容必须通过模块名.变量的形式
#__name__
__name__可以查看文件的名字,在本文件中是'__main__',在作为模块被引用时就是文件名,所以可以用if __name__ =="__main__" 的形式来控制文件在作为模块加载时那些代码执行,那些代码不执行。
二、form 模块 import 功能
在使用from的时候, python也会给我们的模块创建名称空间。这一点和import是一样的,但是from xxx import xxx的时候,我们是把这个空间中的一些变量引入过来了。说白了,就是部分导入。
#from xxx import *
导入所有,如果模块写了__all__,就是导入__all__里的东西,所以不建议用这种方式
#!!!注意
当我们从一个模块中引入一个变量的时候,如果当前文件中出现了重名的变量时,会覆盖掉模块引入的那个变量。
#这些要知道
1、导入模块时可以使用别名
import 模块 as 别名
from 模块 import 功能 as 别名
2、可以一次导入多个模块
import time, random, json, yitian
from type import methodType, functionType
##导入模块要注意的问题
1、所有模块都要写在最上面
2、模块的引入顺序是 系统模块-->第三方模块-->自定义模块
3、!!!我们自己创建的py文件不要和导入的模块重名
python记录day24 模块的语法的更多相关文章
- Python记录_day21 模块
引入模块的方式: 1. import 模块 2. from xxx import 模块 一.collections 模块 1.Counter() counter是一个计数器,主要用来计数,计算一个字符 ...
- python 导入re模块语法及规则
正则表达式是功能比较强大的模块,应用在很多地方,抓网页,数据分析,数据验证等,下面讲述python 导入re模块语法及规则. 1,re模块语法 re.match 从头开始匹配 re.search 匹配 ...
- python记录_day23 正则表达式 re模块
一. 正则表达式 使用python的re模块之前应该对正则表达式有一定的了解 正则表达式是对字符串操作的一种逻辑公式.我们一般使用正则表达式对字符串进行匹配和过滤. 正则的优缺点: 优点:灵活, 功能 ...
- 第四章:4.0 python常用的模块
1.模块.包和相关语法 使用模块好处: 最大的好处是大大提高了代码的可维护性.其次,编写代码不必从零开始.当一个模块编写完毕,就可以被其他地方引用.我们在编写程序的时候,也经常引用其他模块,包括Pyt ...
- Python学习——python的常用模块
模块:用一堆代码实现了某个功能的代码集合,模块是不带 .py 扩展的另外一个 Python 文件的文件名. 一.time & datetime模块 import time import dat ...
- python中os模块在windows下的使用
今天学习了一下Python的os模块,主要是针对文件夹和文件路径的一系列操作. 与Python内置函数相比这里这里的函数功能更多样化,功能也更强大.但是学习过程中我发现很多函数都是只适用于unix系统 ...
- python的pymysql模块简介
一.介绍 在python中用pymysql模块来对mysql进行操作,该模块本质就是一个套接字客户端软件,使用前需要事先安装 pip3 install pymysql 二.操作简介 import py ...
- python之路 模块,序列化,迭代器,生成器
一.模块 1.模块简介 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py.模块可以被别的程序引入,以使用该模块中的函数等功能.这也是使用python标准库的方法. 类似于函数式编程和面向过 ...
- 二. python函数与模块
第四章.内置函数与装饰器详解 1.内置函数补充1 注:红色圆圈:必会: 紫红色方框:熟练: 绿色:了解 callable() 判断函数是否可以被调用执行 def f1(): pass f1() ...
随机推荐
- HDU 5965 扫雷(dfs)题解
题意:给你一个3*n的格子,中间那行表明的是周围8格(当然左右都没有)的炸弹数量,上下两行都可以放炸弹,问你有几种可能,对mod取模 思路:显然(不),当i - 1和i - 2确定时,那么i的个数一定 ...
- R read.tabe line 5 did not have 2 elements
R read.tabe line 5 did not have 2 elements Reason: there are special characters such as # in file o ...
- mysql中创建时间和更新时间的区别
`create_time` ) NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` ) ) COMMENT '更新时间', 而在界 ...
- ISTQB学习笔记
学习ISTQB大纲此文记录初次阅读时不够明确的地方 第一章:软件测试基础1. 引起软件缺陷的原因人都会犯错误(error,mistake),因此人设计的代码或文档中会引入缺陷(defect, faul ...
- HDU 4400 Mines(好题!分两次计算距离)
http://acm.hdu.edu.cn/showproblem.php?pid=4400 题意: 在笛卡尔坐标中有多个炸弹,每个炸弹有一个坐标值和一个爆炸范围.现在有多次操作,每次引爆一个炸弹,问 ...
- SourceTree/git解决pre-commit hook failed的问题
一. git commit -m 'xxx' 出现问题 今天在上传项目的时候在commit阶段遇到一个问题,无论是在Sourcetree上传还是用命令git commit -m 'xxx'都报了一下错 ...
- ERR! registry error parsing json
报错日志: ERR! registry error parsing json ERR! registry error parsing json 解决过程: 从github上克隆一个项目,在npm i的 ...
- 【BZOJ】3140: [Hnoi2013]消毒
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3140 猜一发(显然)有结论:每次一定选择一个平面,即每次操作对答案的贡献都为$1$ 首先可 ...
- PyEngine3D
git clone https://github.com/ubuntunux/PyEngine3D cd PyEngine3D pip install -r requirements.txt pyth ...
- eclipse安装失败
在eclipse下载后第一次运行eclipse出现如下错误,刚打开后就退出并返回code=13,最后发现 是eclipse的安装版本是64bit,但是jdk的版本是基于32bit的所以出现上面的错误, ...